make global history treeview callback return error
returns an error instead of directly waning the user.
This commit is contained in:
parent
07376fc96b
commit
1620f20c4d
|
@ -661,10 +661,12 @@ static nserror global_history_tree_node_folder_cb(
|
||||||
|
|
||||||
return NSERROR_OK;
|
return NSERROR_OK;
|
||||||
}
|
}
|
||||||
static nserror global_history_tree_node_entry_cb(
|
|
||||||
struct treeview_node_msg msg, void *data)
|
static nserror
|
||||||
|
global_history_tree_node_entry_cb(struct treeview_node_msg msg, void *data)
|
||||||
{
|
{
|
||||||
struct global_history_entry *e = data;
|
struct global_history_entry *e = data;
|
||||||
|
nserror ret = NSERROR_OK;
|
||||||
|
|
||||||
switch (msg.msg) {
|
switch (msg.msg) {
|
||||||
case TREE_MSG_NODE_DELETE:
|
case TREE_MSG_NODE_DELETE:
|
||||||
|
@ -678,10 +680,8 @@ static nserror global_history_tree_node_entry_cb(
|
||||||
|
|
||||||
case TREE_MSG_NODE_LAUNCH:
|
case TREE_MSG_NODE_LAUNCH:
|
||||||
{
|
{
|
||||||
nserror error;
|
|
||||||
struct browser_window *existing = NULL;
|
struct browser_window *existing = NULL;
|
||||||
enum browser_window_create_flags flags =
|
enum browser_window_create_flags flags = BW_CREATE_HISTORY;
|
||||||
BW_CREATE_HISTORY;
|
|
||||||
|
|
||||||
/* TODO: Set existing to window that new tab appears in */
|
/* TODO: Set existing to window that new tab appears in */
|
||||||
|
|
||||||
|
@ -693,16 +693,14 @@ static nserror global_history_tree_node_entry_cb(
|
||||||
/* TODO: flags ^= BW_CREATE_TAB; */
|
/* TODO: flags ^= BW_CREATE_TAB; */
|
||||||
}
|
}
|
||||||
|
|
||||||
error = browser_window_create(flags, e->url, NULL,
|
ret = browser_window_create(flags, e->url, NULL,
|
||||||
existing, NULL);
|
existing, NULL);
|
||||||
if (error != NSERROR_OK) {
|
|
||||||
warn_user(messages_get_errorcode(error), 0);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return NSERROR_OK;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct treeview_callback_table gh_tree_cb_t = {
|
struct treeview_callback_table gh_tree_cb_t = {
|
||||||
.folder = global_history_tree_node_folder_cb,
|
.folder = global_history_tree_node_folder_cb,
|
||||||
.entry = global_history_tree_node_entry_cb
|
.entry = global_history_tree_node_entry_cb
|
||||||
|
|
|
@ -2402,6 +2402,7 @@ static nserror treeview_node_launch_walk_fwd_cb(treeview_node *n, void *ctx,
|
||||||
bool *skip_children, bool *end)
|
bool *skip_children, bool *end)
|
||||||
{
|
{
|
||||||
struct treeview_launch_walk_data *lw = ctx;
|
struct treeview_launch_walk_data *lw = ctx;
|
||||||
|
nserror ret = NSERROR_OK;
|
||||||
|
|
||||||
if (n->type == TREE_NODE_FOLDER && n->flags & TV_NFLAGS_SELECTED) {
|
if (n->type == TREE_NODE_FOLDER && n->flags & TV_NFLAGS_SELECTED) {
|
||||||
lw->selected_depth++;
|
lw->selected_depth++;
|
||||||
|
@ -2412,10 +2413,10 @@ static nserror treeview_node_launch_walk_fwd_cb(treeview_node *n, void *ctx,
|
||||||
struct treeview_node_msg msg;
|
struct treeview_node_msg msg;
|
||||||
msg.msg = TREE_MSG_NODE_LAUNCH;
|
msg.msg = TREE_MSG_NODE_LAUNCH;
|
||||||
msg.data.node_launch.mouse = BROWSER_MOUSE_HOVER;
|
msg.data.node_launch.mouse = BROWSER_MOUSE_HOVER;
|
||||||
lw->tree->callbacks->entry(msg, n->client_data);
|
ret = lw->tree->callbacks->entry(msg, n->client_data);
|
||||||
}
|
}
|
||||||
|
|
||||||
return NSERROR_OK;
|
return ret;
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* Launch a selection.
|
* Launch a selection.
|
||||||
|
|
Loading…
Reference in New Issue