New issue
Advanced search Search tips

Issue 631215 link

Starred by 2 users

Issue metadata

Status: Archived
Owner:
Closed: Aug 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 615155



Sign in to add a comment

mash shelf: Convert ShelfLayoutManager to use ash common types.

Project Member Reported by jamescook@chromium.org, Jul 25 2016

Issue description

Right now it accesses the ash::RootWindowController

It also accesses ash::Shell, but that's for the auto-hide event filter, which is a separate issue.

 

Comment 1 by msw@chromium.org, Jul 26 2016

Owner: msw@chromium.org
Status: Started (was: Available)
WIP CL: https://codereview.chromium.org/2187513003/
Project Member

Comment 2 by bugdroid1@chromium.org, Jul 27 2016

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

commit a3c45128cb054e43525f64c05477d136ff89a708
Author: msw <msw@chromium.org>
Date: Wed Jul 27 23:29:28 2016

mash: Partially migrate ShelfLayoutManager to ash common types.

ActivationChangeObserver -> WmActivationObserver.
Always create RootWindowControllerObserverImpl.
Make RootWindowControllerObserverImpl add/remove itself.

Compare display ids instead of root windows.
Use wm::GetWindowForFullscreenMode instead of ash::RWC.
Use WmLookup instead of WmWindowAura::Get.
Use Widget::IsMouseEventsEnabled instead of CursorClient.
Fix IWYU issues; remove unused forward decls/friends.

BUG= 631215 
TEST=Automated tests; no behavior changes.
R=jamescook@chromium.org

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

[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/display/screen_ash.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/root_window_controller.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/screen_util.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/shelf/shelf_layout_manager.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/shelf/shelf_layout_manager.h
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/shelf/shelf_widget.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/shelf/shelf_widget_unittest.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/sysui/shelf_delegate_mus.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/wm/dock/docked_window_layout_manager_unittest.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/wm/dock/docked_window_resizer_unittest.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/ash/wm/workspace_controller_unittest.cc
[modify] https://crrev.com/a3c45128cb054e43525f64c05477d136ff89a708/chrome/browser/ui/ash/multi_user/user_switch_animator_chromeos.cc

Comment 3 by msw@chromium.org, Jul 29 2016

Summary: mash shelf: Convert ShelfLayoutManager to use ash common types. (was: mash shelf: Convert ShelfLayoutManager to use WmRootWindowController)
Using WmRootWindowController is fixed; still TODO for ash/common readiness:
- ShelfGestureHandler ( Issue 629252 )
- SnapToPixelLayoutManager...
- ShelfWidget and Shelf...
- ScreenUtil::[ConvertRectToScreen|GetShelfDisplayBoundsInRoot|GetDisplayBoundsInParent]
- ShelfBezelEventFilter
- AutoHideEventFilter (Shell::[Add|Remove]PreTargetEventHandler)
- Shell::SetDisplayWorkAreaInsets
- ShelfGestureHandler
- kCrossFadeDurationMS (ash/wm/window_animations.h)
- WorkspaceController
I'm OK with breaking auto-hide if it gets the shelf working quicker (and allows us to turn off mojo:sysui). Feel free to delegate out the creation of the event filters, similar to how sky@ has done it for the WM ones.

Project Member

Comment 5 by bugdroid1@chromium.org, Aug 2 2016

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

commit 298130395887de9cb3367d735f1977fc17762e1c
Author: msw <msw@chromium.org>
Date: Tue Aug 02 19:37:40 2016

mash: Paritally migrate ShelfLayoutManagerTest to ash common types.

Use CreateTestWidget where possible.
Use AshTestBase::GetEventGenerator() throughout.
Use display::Screen::GetPrimaryDisplay().

Try to re-enable some tests.
Try to avoid SupportsHostWindowResize early returns.

BUG= 631215 
TEST=Automated
R=jamescook@chromium.org

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

[modify] https://crrev.com/298130395887de9cb3367d735f1977fc17762e1c/ash/shelf/shelf_layout_manager_unittest.cc

Can this be closed?

Comment 7 by msw@chromium.org, Aug 31 2016

Status: Fixed (was: Started)
Yep!

Comment 8 by dchan@chromium.org, Oct 7 2016

Labels: VerifyIn-55

Comment 9 by dchan@google.com, Nov 19 2016

Labels: VerifyIn-56

Comment 10 by dchan@google.com, Jan 21 2017

Labels: VerifyIn-57

Comment 11 by dchan@google.com, Mar 4 2017

Labels: VerifyIn-58

Comment 12 by dchan@google.com, Apr 17 2017

Labels: VerifyIn-59

Comment 13 by dchan@google.com, May 30 2017

Labels: VerifyIn-60
Labels: VerifyIn-61

Comment 15 by dchan@chromium.org, Oct 14 2017

Status: Archived (was: Fixed)
Components: -MUS Internals>Services>WindowService

Sign in to add a comment