New issue
Advanced search Search tips

Issue 717276 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug

Blocking:
issue 680330



Sign in to add a comment

Cannot simulate Drag&Drop through gpuBenchmarking.pointerActionSequence()

Project Member Reported by chongz@chromium.org, May 1 2017

Issue description

Chrome Version: 60.0.3080.0
OS: Tested on macOS, maybe All

With the deprecation of eventSender ( issue 711340 ) we should have a way to simulate drag&drop.

However the following code doesn't work (Snippet 1) while the similar eventSender version works fine (Snippet 2)

``` Snippet 1
chrome.gpuBenchmarking.pointerActionSequence( [
    {source: 'mouse',
     actions: [
        { name: 'pointerMove', x: xPosition1, y: yPosition1 },
        { name: 'pointerDown', x: xPosition1, y: yPosition1 },
        { name: 'pause', duration: 0.6 },
        { name: 'pointerMove', x: xPosition2, y: yPosition2 },
        { name: 'pointerUp'},
    ]}], resolve);
```

``` Snippet 2
eventSender.mouseMoveTo(xPosition1, yPosition1);
eventSender.mouseDown();
eventSender.leapForward(600);
eventSender.mouseMoveTo(xPosition2, yPosition2);
eventSender.mouseUp();
```

--- My Investigations
1. |SyntheticPointerAction::ForwardTouchOrMouseInputEvents():80|
  * Are we re-sending last event for |PointerActionType::IDLE|?
2. |WebViewImpl::HandleInputEvent():2179|
  * 'mouseup' seems to be suppressed here and won't trigger drop.

 
I will take a look, could you please give me the link of the CL that uses this drag and drop test? Thanks!
Owner: lanwei@chromium.org
Status: Available (was: Untriaged)
Sure, here is a sample CL: https://codereview.chromium.org/2859483002/
Labels: -OS-Mac OS-All
In order to fix this is appears we need to inject native events into the OS for each platform. ie; On Windows we need to generate call SendInput etc...
Status: Assigned (was: Available)

Sign in to add a comment