From fd961c6dfabbfc8dc14b1cd710c8ccbdd89b1bc7 Mon Sep 17 00:00:00 2001 From: Michael Drake Date: Sun, 18 Aug 2013 13:22:57 +0100 Subject: [PATCH] Ensure ctrl modifier is handled, by dealing with it before no-modifiers case. --- desktop/treeview.c | 11 ++++++----- 1 file 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) {