Page MenuHomePhabricator

DND broken now on non elm objects.
Open, Showstopper IssuesPublic

Description

This is new. elm dnd used to work on non-elm objects, like elm gesture layer still does. it simply used them and geometry regions on which to listen for dnd, so rage uses an evas rect for both elm gesture layer events ad well as dnd. this is specifically dnd WHILE rage plays a video. it works on the browser view as the dnd object is an elm scroller, but when in video mode there is an invisible evas rect on top for gestures and dnd.

to reproduce:

run rage with some file e.g.:

rage file.mp4

now try and dnd anything onto it. it will do nothing. instead it will work if you do:

rage

then dnd anything. this starts rage in browser mode instead of playing a video already.

raster created this task.Jul 16 2018, 2:40 AM
raster triaged this task as High priority.
netstar edited projects, added efl (efl-1.21); removed efl.Jul 17 2018, 3:11 AM
netstar raised the priority of this task from High to Showstopper Issues.

I'm adding this tag (efl-1.21) so it is more visible. I'm certain this is a regression and should really get fixed prior to the release. Also am upgrading the status to show stopper due to it being a regression.

Is there anyone working on this problem? I see no activity since its creation. If this is supposed to be a showstopper for 1.20 this needs to be worked on as most other showstopper bugs are havign patches in testing already.

Okay, this will likely not get fixed.

In the new system, drag events like position dropped etc. are emitted directly on the widget. Thus the events are going through a implementation that is aware of the fact that there can be somehting dropped moved on it. This is obviously only the case for elm widgets.

I dont see a fast way of resolving this, without bringing back the old elm_cnp implementation that was there. Which would be a lot of work just right before of a release.

However, it is not clear to me that this api allows Evas_Objects as the first argument. The whole api of elm is build that the APIs have a Evas_Object *obj as the first argument, without stating that this is only working for widgets. Thus i am not too sure if i would automatically assume that this work also for evas objects. We should get here some sort of conclusion if elm_ API is defined to work on Evas_Objects or not, when its not explicitly stated .... (IMO no. :))