• Mitsuru Oshima's avatar
    Update the gesture target on AttemptToStartDrag. · e621e77c
    Mitsuru Oshima authored
    For Exo windows, the initial gesture target is set to an ExoSurface. If
    the client (Android) requests a drag-move or drag-resize, then Exo calls
    AttemptToStartDrag, and provides the ExoShellSurface as the target.
    Then, ToplevelWindowEventHandler will transfer the events to the new
    target. However, WmToplevelWindowEventHandler won't update the gesture
    target. This means all events will be ignored later in
    WmToplevelWindowEventHandler::OnGestureEvent because it believes they
    are events for the client which need to not be delivered.
    
    Bug: b/124026845
    Test: Drag-to-move via touch of a PIP window no longer lags.
    Change-Id: I6e7bca73561fdab1bf357dd86de2a5d4e9a4bddc
    Reviewed-on: https://chromium-review.googlesource.com/c/1477452Reviewed-by: default avatarEliot Courtney <edcourtney@chromium.org>
    Reviewed-by: default avatarMitsuru Oshima <oshima@chromium.org>
    Commit-Queue: Mitsuru Oshima <oshima@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#634401}
    e621e77c
window_service_delegate_impl.cc 8.94 KB