evas: Call legacy events before new key/pointer eo events
authorJean-Philippe Andre <jp.andre@samsung.com>
Wed, 10 Aug 2016 07:29:17 +0000 (16:29 +0900)
committerJean-Philippe Andre <jp.andre@samsung.com>
Wed, 10 Aug 2016 07:56:06 +0000 (16:56 +0900)
commit1185c40e508ca2ecc4c5e86ba28835b4e61f1c21
treef8592d6165e49517da36eb290af422ca0b181afb
parent0889444449c7c776ac216b910ad3a492e6d408b8
evas: Call legacy events before new key/pointer eo events

This affects pointer & key events.

Here's the scenario: in Enventor, an elm_button object
grabs the up & down keys for the autocompletion feature.
But the entry will also listen to up & down to move the
cursor. Moreover, the scroller listens to up & down arrow
keys to scroll around.

So, when calling the new eo event first, the scroller
or the entry would catch it and do some action. In
Enventor, this triggered a hide on the magic anchor
object. Bad, bad.

I fear something will be wrong with this order as well.
Both events (legacy & eo) should be called simultaneously,
following the order & priorities that were set.

This being said, in real life most of EFL internals will
move to the new eo events (right now elm relies on the
new events, but edje doesn't, yet), so any app grabbing a
key probably wants to handle the event before elm. Same
for an app using focus manually.

Fixes T4310
src/lib/evas/canvas/evas_callbacks.c