New issue
Advanced search Search tips

Issue 901544 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 30
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug

Blocking:
issue 890071



Sign in to add a comment

TabDragging isn't working with touches when immersive mode is activated

Project Member Reported by mukai@chromium.org, Nov 2

Issue description

TabDragging/DetachToBrowserTabDragControllerTest.DetachToOwnWindowWhileInImmersiveFullscreenMode/1 is failing with SingleProcessMash
 
Labels: Pri-2

Comment 2 Deleted

Status: Started (was: Assigned)
Summary: TabDragging isn't working with touches when immersive mode is activated (was: TabDragging/DetachToBrowserTabDragControllerTest.DetachToOwnWindowWhileInImmersiveFullscreenMode/1 is failing with SingleProcessMash)
It seems that this failure reflects an actual bug;
- open Chrome with SingleProcessMash
- enter into immersive fullscreen mode
- ctrl-t
- enter some page (like "youtube.com")
- drag the youtube tab with touch

This is not working at all.  It's working with NTP because the top margin for the bookmark bar affects the hittest which just happens to be lucky for us.
Project Member

Comment 4 by bugdroid1@chromium.org, Nov 30

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/832af13591619c0ccbe9ccffa6403eecd7b834da

commit 832af13591619c0ccbe9ccffa6403eecd7b834da
Author: Jun Mukai <mukai@chromium.org>
Date: Fri Nov 30 05:43:44 2018

fix tab-dragging with touch on immersive-mode for Mash

Things are really complicated when a tab is about to be dragged
with touch events during immersive fullscreen mode in Mash. The
details are depicted as
https://docs.google.com/document/d/1fS6YlkYUCqPCHJpVvKEVbgVilkmnPGl5x2a2kZvW7z0/edit?usp=sharing.

This CL allows Ash to pick up the right target window by setting
the insets when the reveal status is changed.

The test also needs to be fixed because:
- without reveal lock, it can't say the tabstrip is really there
  (and the insets are properly set)
- QuitWhenNotDragging needs to be executed for touch events too,
  otherwise it doesn't wait for asynchronous touch events.

Bug:  901544 
Test: see the filter. also manually checked the behavior
Change-Id: I9215fd0198f48a0ac641cd850ff290513e185775
Reviewed-on: https://chromium-review.googlesource.com/c/1336370
Commit-Queue: Jun Mukai <mukai@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Cr-Commit-Position: refs/heads/master@{#612576}
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/chrome/browser/ui/views/frame/immersive_mode_controller_ash.cc
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/chrome/browser/ui/views/tabs/tab_drag_controller_interactive_uitest.cc
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/testing/buildbot/filters/chromeos.single_process_mash.interactive_ui_tests.filter
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/ui/aura/window_targeter.cc
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/ui/views/controls/native/native_view_host.cc
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/ui/views/controls/native/native_view_host.h
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/ui/views/controls/native/native_view_host_aura.cc
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/ui/views/controls/native/native_view_host_aura.h
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/ui/views/controls/native/native_view_host_aura_unittest.cc
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/ui/views/controls/native/native_view_host_mac.h
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/ui/views/controls/native/native_view_host_mac.mm
[modify] https://crrev.com/832af13591619c0ccbe9ccffa6403eecd7b834da/ui/views/controls/native/native_view_host_wrapper.h

Status: Fixed (was: Started)

Sign in to add a comment