Move onDragEvent out of ContentViewCore |
||||||||||
Issue descriptionContentViewCore is moving away eventually. OnDragEvent needs to be plumbed elsewhere, through ViewAndroid probably. https://codereview.chromium.org/2135493002/#msg17
,
Oct 21 2016
Unassign myself since I'm leaving the team. I heard David and Jinsuk are working in this area.
,
Oct 28 2016
Jinsuk, would you be able to look into this?
,
Nov 7 2016
,
Nov 11 2016
Assigning to wychen who showed interest - wychen could you take a look? Thanks!
,
Nov 11 2016
,
Dec 5 2016
,
Mar 14 2017
This becomes feasible as Issue 671401 is resolved.
,
May 18 2017
One question to answer about refactoring this is how we model drag event class in the native. EventForwarder/ViewAndroid has been built around MotionEvent only. ui/event doesn't have a class for drag&drop. Should we start with introducing a new event for drag and drop first, or just make use of MotionEvent by adding a few more fields in it? wychen@ let me know if you will be working on this or not.
,
May 18 2017
aura uses this: https://cs.chromium.org/chromium/src/ui/base/dragdrop/drop_target_event.h?q=ui::DropTargetEvent&sq=package:chromium ui/base, not ui/event though. I guess should investigate if it can be shared
,
May 19 2017
I'm focusing on other things for now, so I won't be working on this one for at least a month. Sorry for holding it for too long.
,
May 19 2017
remove this from webview bugcop queue
,
May 22 2017
Great. DropTargetEvent will work if we add os_exchange_data_provider_android.cc that contains the filtered mime types.
,
May 23 2017
Further look into DropTargetEvent class shows it is suitable only for the action ACTION_DROP (as its name suggests) among the ones Android android.view.DragEvent can have (ACTION_DRAG_{ENTERED|EXITED|ENDED|STARTED|LOCATION}). Other platforms handles these action in separate methods by inheriting DragDropDelegate (ui/aura/client/drag_drop_delegate.h) but it doesn't look handy to make use of the interface on Android since all the info better remain parceled in one event class until it reaches the class (WebContentsViewAndroid) where appropriate action is taken (OnDragEntered/Updated/PerformDrop...etc).
So that makes me think a better way is to define a new event class (inherited from LocatedEvent) that can hold any of these actions plus other info to carry them through ViewAndroid hierarchy. That would make the way drag event is handled analogous to other kinds of events.
,
Jul 20 2017
|
||||||||||
►
Sign in to add a comment |
||||||||||
Comment 1 by siev...@chromium.org
, Jul 11 2016