diff options
author | discomfitor <michael.blumenkrantz@gmail.com> | 2013-09-20 16:00:27 +0100 |
---|---|---|
committer | discomfitor <michael.blumenkrantz@gmail.com> | 2013-09-20 16:00:27 +0100 |
commit | 77b2c5a7f4d13bc9b6811f81e85b0c7af32d722f (patch) | |
tree | 07f3843f504877baf67785837e742ad6a4f0d658 | |
parent | b8f50a95f73f06aa11d809a0bddb8647bf23b698 (diff) | |
download | enlightenment-77b2c5a7f4d13bc9b6811f81e85b0c7af32d722f.tar.gz |
bugfix: check mouse location when clicking menu items, only activate menu if mouse is inside menu when clicking
T164
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | src/bin/e_menu.c | 11 |
2 files changed, 14 insertions, 1 deletions
@@ -1,3 +1,7 @@ +2013-09-20 Mike Blumenkrantz + + * Check mouse location when clicking menus, only activate items when clicking in the menu + 2013-09-19 Mike Blumenkrantz * Fix bug where new files could not be created repeatedly diff --git a/src/bin/e_menu.c b/src/bin/e_menu.c index acae3a3289..3556bede86 100644 --- a/src/bin/e_menu.c +++ b/src/bin/e_menu.c @@ -2969,7 +2969,16 @@ _e_menu_cb_mouse_up(void *data __UNUSED__, int type __UNUSED__, void *event) */ } else - ret = _e_menu_active_call(); + { + E_Menu *m = _e_menu_active_get(); + + if (m && E_INSIDE(ev->root.x, ev->root.y, + m->zone->x + m->cur.x, + m->zone->y + m->cur.y, + m->zone->x + m->cur.x + m->cur.w, + m->zone->y + m->cur.y + m->cur.h)) + ret = _e_menu_active_call(); + } _e_menu_activate_maybe_drag = 0; _e_menu_activate_dragging = 0; if (ret == 1) |