evas_events: fixed keyup with modifier

Summary:
removed check that disallows exact modifiers set.
I.e. if we need Ctrl+s without any other modifiers:

mask = evas_key_modifier_mask_get(obj, "Control");
evas_object_key_grab(obj, "o", mask, ~mask, false);

This works with keydown, but was broken with keyup.

Reviewers: cedric, seoz, Hermet, raster

Subscribers: cedric, reutskiy.v.v

Differential Revision: https://phab.enlightenment.org/D1474

Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
Signed-off-by: Carsten Haitzler (Rasterman) <raster@rasterman.com>
This commit is contained in:
Andrii Kroitor 2014-09-24 11:42:26 +02:00 committed by Cedric BAIL
parent cc1a5149fe
commit adff9e013d
1 changed files with 1 additions and 2 deletions

View File

@ -2596,8 +2596,7 @@ _canvas_event_feed_key_up_internal(Eo *eo_e,
if (!g->object) continue;
if (((e->modifiers.mask & g->modifiers) ||
(g->modifiers == e->modifiers.mask)) &&
(!((e->modifiers.mask & g->not_modifiers) ||
(g->not_modifiers == ~e->modifiers.mask))) &&
(!(e->modifiers.mask & g->not_modifiers)) &&
(!strcmp(keyname, g->keyname)))
{
Evas_Object_Protected_Data *object_obj = eo_data_scope_get(g->object, EVAS_OBJECT_CLASS);