New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 735994 link

Starred by 1 user

Issue metadata

Status: Archived
Owner:
Closed: Jul 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug

Blocked on:
issue 741953

Blocking:
issue 725977



Sign in to add a comment

Tablet WM: Swiping down on the opened system tray menu

Project Member Reported by minch@chromium.org, Jun 22 2017

Issue description

If the system tray menu is opened, user can swiping down on it.
1. Only for bottom shelf.

2. Can only swiping on the top area of the menu. Let me make it the size of one item of the system menu.

3. The same rules as swiping up on the system tray of showing / closing the menu.
Fling event consider the fling velocity first. Then depends on the dragging position.
Scroll event consider only the dragging position. Swiping down exceed one third of the height of the menu, close the menu. Otherwise, keep it opened. 
 

Comment 1 by minch@chromium.org, Jun 28 2017

Blocking: 725977

Comment 2 Deleted

Comment 3 by minch@chromium.org, Jun 29 2017

Labels: -Pri-3 Pri-2

Comment 4 by minch@chromium.org, Jun 29 2017

The opened bubble should can be dragged everywhere. There is one problem to do this if there are sliders in the bubble (e.g,audio, brightness).

Since slider handled the scroll events first. If dragging on the slider area will only change the status of the slider not the bubble.
And we can also tap the slider anywhere to change the position of the circular button on the slider. This means if we touch on the slider area, the first thing it will do is to change the button on the slider according to the position of the tap event.

I am not sure that we can keep the current effect of slider to support dragging of the bubble.
And why do we support tapping anywhere of slider (can also continue swiping regardless the direction, but only consider the x-axis change) to change the status of the slider? I think this is reasonable for mouse events but not touch events?
 
Can we just support tapping and swiping that happened on the button (I mean the small circular button on the slider) of the slider?

Then, we can support dragging on the bubble that happened on the slider area except the circular button on the slider?

omrillo@, xdai@, zork@, what's your opinion?
Cc: tdander...@chromium.org
Re #4, the user should be able to tap down anywhere on the slider bar to move the thumb (circular 'button' portion of the control) to the desired location. This is an easy way to change the slider to a desired position without needing to first target the thumb and then drag it, so I would not suggest changing this behavior.

The slider is targeted when the user taps down on the slider thumb, and all subsequent scroll events (either vertical or horizontal) are dispatched to the slider. This is for the following case: the user taps down on the slider thumb (which highlights it), the user scrolls up/down slightly either by accident or to verify that the thumb is highlighted, and then the user scrolls left/right to adjust the slider value. I don't suggest we change this behavior either; in other words, vertical scrolls should still be dispatched to the slider thumb if it is already targeted, and should not be dispatched to the menu.

In summary, I suggest leaving the event-handling behaviors of sliders alone. If the user's swipe-down happens to originate on the slider, those events should remain targeted to the slider.

Comment 6 by minch@chromium.org, Jul 11 2017

Status: Started (was: Assigned)

Comment 7 by minch@chromium.org, Jul 13 2017

Blockedon: 741953
Components: UI>Shell>StatusArea
Labels: M-61 OS-Chrome
Project Member

Comment 9 by bugdroid1@chromium.org, Jul 18 2017

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

commit d8633937d1ea5d357a182247ae8e977966d6a67e
Author: minch <minch@chromium.org>
Date: Tue Jul 18 20:07:50 2017

Touch gestures for System Tray/ IME/ Stylus/ Notifications

Swiping up on the System Tray/ IME/ Stylus/ Notifications buttons in
status area should open the associated bubble.
Swiping down on the opened bubble should close the associated bubble.

Changes:
1.Added the tray_drag_controller to extract the logic of dragging behavior from system_tray.
2.Added help functions in tray_background_view to get the state of associated tray bubble.
3.Added one interface ProcessGestureEventForBubble in TrayBubbleView::Delegate
to help process the dragging that happened on the tray bubble.

BUG= 735994 , 735996 

Review-Url: https://codereview.chromium.org/2961313003
Cr-Commit-Position: refs/heads/master@{#487573}

[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/BUILD.gn
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/accelerators/accelerator_controller.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/ime_menu/ime_menu_tray.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/ime_menu/ime_menu_tray.h
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/ime_menu/ime_menu_tray_unittest.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/palette/palette_tray.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/palette/palette_tray.h
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/tray/system_tray.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/tray/system_tray.h
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/tray/system_tray_bubble.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/tray/system_tray_bubble.h
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/tray/system_tray_unittest.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/tray/tray_background_view.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/tray/tray_background_view.h
[add] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/tray_drag_controller.cc
[add] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/tray_drag_controller.h
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/web_notification/web_notification_tray.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ash/system/web_notification/web_notification_tray.h
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ui/views/bubble/tray_bubble_view.cc
[modify] https://crrev.com/d8633937d1ea5d357a182247ae8e977966d6a67e/ui/views/bubble/tray_bubble_view.h

Comment 10 by minch@chromium.org, Jul 18 2017

Status: Fixed (was: Started)
Keep the event-handling behaviors of sliders alone. Changes this to fixed currently.

Comment 11 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment