summaryrefslogtreecommitdiff
path: root/desktop/treeview.c
diff options
context:
space:
mode:
authorMichael Drake <tlsa@netsurf-browser.org>2013-08-18 13:22:57 +0100
committerMichael Drake <tlsa@netsurf-browser.org>2013-08-18 13:22:57 +0100
commitfd961c6dfabbfc8dc14b1cd710c8ccbdd89b1bc7 (patch)
tree984d85189d622c5ff15684d4f82385ac905606f0 /desktop/treeview.c
parent5aa5eb9d6f1be0b279cace1e58d43470ed6a7124 (diff)
downloadnetsurf-fd961c6dfabbfc8dc14b1cd710c8ccbdd89b1bc7.tar.gz
netsurf-fd961c6dfabbfc8dc14b1cd710c8ccbdd89b1bc7.tar.bz2
Ensure ctrl modifier is handled, by dealing with it before no-modifiers case.
Diffstat (limited to 'desktop/treeview.c')
-rw-r--r--desktop/treeview.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/desktop/treeview.c b/desktop/treeview.c
index eb43517f4..6facc6afc 100644
--- a/desktop/treeview.c
+++ b/desktop/treeview.c
@@ -2431,6 +2431,12 @@ static nserror treeview_node_mouse_action_cb(treeview_node *node, void *ctx,
/* Tell client an entry was launched */
ma->tree->callbacks->entry(msg, node->client_data);
+ } else if (ma->mouse & BROWSER_MOUSE_PRESS_2 ||
+ (ma->mouse & BROWSER_MOUSE_PRESS_1 &&
+ ma->mouse & BROWSER_MOUSE_MOD_2)) {
+ /* Toggle selection of node */
+ action |= TV_NODE_ACTION_SELECTION;
+
} else if (ma->mouse & BROWSER_MOUSE_PRESS_1 &&
!(node->flags & TREE_NODE_SELECTED) &&
part != TV_NODE_PART_TOGGLE) {
@@ -2440,11 +2446,6 @@ static nserror treeview_node_mouse_action_cb(treeview_node *node, void *ctx,
/* Select node */
action |= TV_NODE_ACTION_SELECTION;
- } else if (ma->mouse & BROWSER_MOUSE_PRESS_2 ||
- (ma->mouse & BROWSER_MOUSE_PRESS_1 &&
- ma->mouse & BROWSER_MOUSE_MOD_2)) {
- /* Toggle selection of node */
- action |= TV_NODE_ACTION_SELECTION;
}
if (action & TV_NODE_ACTION_SELECTION) {