mus: PointerWatcher should use screen coordinates |
||||
Issue descriptionMost candidates for conversion to PointerWatcher take the input event and immediately convert it to screen coordinates to test against a widget's bounds. Right now under mus we're relying on root_window coordinates matching screen coordinates, and it probably only works in single-display. See issue 608507 . Change the method signatures of PointerWatcher to explicitly pass screen coordinates to listeners, since that's what they want anyway.
,
May 3 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e27b07278681ba98ec911b145968315b5eb63440 commit e27b07278681ba98ec911b145968315b5eb63440 Author: jamescook <jamescook@chromium.org> Date: Tue May 03 19:59:25 2016 mash: Fix shelf overflow bubble not closing on click outside its bounds * Add screen location to views::PointerWatcher notifications. * Convert OverflowBubble from a global ui::EventHandler to a PointerWatcher, which allows it to work on mus. Add/remove the PointerWatcher in the constructor/destructor which ensures it is properly cleaned up when the widget is destroyed (unlike the previous pre-target handler). BUG= 595851 , 608508 TEST=existing ash_unittests for overflow bubble. For mash, shrink the window to show overflow arrow, click to spawn it, click outside bubble to close it. Review-Url: https://codereview.chromium.org/1934123004 Cr-Commit-Position: refs/heads/master@{#391334} [modify] https://crrev.com/e27b07278681ba98ec911b145968315b5eb63440/ash/pointer_watcher_delegate_aura.cc [modify] https://crrev.com/e27b07278681ba98ec911b145968315b5eb63440/ash/pointer_watcher_delegate_aura.h [modify] https://crrev.com/e27b07278681ba98ec911b145968315b5eb63440/ash/shelf/overflow_bubble.cc [modify] https://crrev.com/e27b07278681ba98ec911b145968315b5eb63440/ash/shelf/overflow_bubble.h [modify] https://crrev.com/e27b07278681ba98ec911b145968315b5eb63440/ash/system/tray/tray_event_filter.cc [modify] https://crrev.com/e27b07278681ba98ec911b145968315b5eb63440/ash/system/tray/tray_event_filter.h [modify] https://crrev.com/e27b07278681ba98ec911b145968315b5eb63440/ui/views/mus/window_manager_connection.cc [modify] https://crrev.com/e27b07278681ba98ec911b145968315b5eb63440/ui/views/mus/window_manager_connection_unittest.cc [modify] https://crrev.com/e27b07278681ba98ec911b145968315b5eb63440/ui/views/pointer_watcher.h
,
May 3 2016
,
May 23 2016
Bulk verified
,
May 23 2016
bulk verified
,
Feb 26 2018
|
||||
►
Sign in to add a comment |
||||
Comment 1 by jamescook@chromium.org
, May 3 2016