| Index: ash/common/wm_root_window_controller.h
|
| diff --git a/ash/common/wm_root_window_controller.h b/ash/common/wm_root_window_controller.h
|
| deleted file mode 100644
|
| index 15e811cbd129b3b2fd47674c659fbf5e255d80b5..0000000000000000000000000000000000000000
|
| --- a/ash/common/wm_root_window_controller.h
|
| +++ /dev/null
|
| @@ -1,202 +0,0 @@
|
| -// Copyright 2016 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef ASH_COMMON_WM_ROOT_WINDOW_CONTROLLER_H_
|
| -#define ASH_COMMON_WM_ROOT_WINDOW_CONTROLLER_H_
|
| -
|
| -#include "ash/ash_export.h"
|
| -#include "ash/common/wm/workspace/workspace_types.h"
|
| -#include "base/macros.h"
|
| -#include "ui/base/ui_base_types.h"
|
| -#include "ui/views/widget/widget.h"
|
| -
|
| -namespace gfx {
|
| -class Point;
|
| -}
|
| -
|
| -namespace ui {
|
| -class MenuModel;
|
| -}
|
| -
|
| -namespace views {
|
| -class MenuModelAdapter;
|
| -class MenuRunner;
|
| -}
|
| -
|
| -namespace ash {
|
| -
|
| -class AlwaysOnTopController;
|
| -class AnimatingWallpaperWidgetController;
|
| -class DockedWindowLayoutManager;
|
| -class PanelLayoutManager;
|
| -class RootWindowController;
|
| -class SystemModalContainerLayoutManager;
|
| -class SystemTray;
|
| -class WallpaperWidgetController;
|
| -class WmShelf;
|
| -class WmWindow;
|
| -class WorkspaceController;
|
| -
|
| -enum class LoginStatus;
|
| -
|
| -namespace wm {
|
| -class RootWindowLayoutManager;
|
| -}
|
| -
|
| -// Provides state associated with a root of a window hierarchy.
|
| -class ASH_EXPORT WmRootWindowController {
|
| - public:
|
| - WmRootWindowController(RootWindowController* root_window_controller,
|
| - WmWindow* window);
|
| - ~WmRootWindowController();
|
| -
|
| - DockedWindowLayoutManager* docked_window_layout_manager() {
|
| - return docked_window_layout_manager_;
|
| - }
|
| -
|
| - PanelLayoutManager* panel_layout_manager() { return panel_layout_manager_; }
|
| -
|
| - wm::RootWindowLayoutManager* root_window_layout_manager() {
|
| - return root_window_layout_manager_;
|
| - }
|
| -
|
| - WallpaperWidgetController* wallpaper_widget_controller() {
|
| - return wallpaper_widget_controller_.get();
|
| - }
|
| - void SetWallpaperWidgetController(WallpaperWidgetController* controller);
|
| -
|
| - AnimatingWallpaperWidgetController* animating_wallpaper_widget_controller() {
|
| - return animating_wallpaper_widget_controller_.get();
|
| - }
|
| - void SetAnimatingWallpaperWidgetController(
|
| - AnimatingWallpaperWidgetController* controller);
|
| -
|
| - WorkspaceController* workspace_controller() {
|
| - return workspace_controller_.get();
|
| - }
|
| -
|
| - AlwaysOnTopController* always_on_top_controller() {
|
| - return always_on_top_controller_.get();
|
| - }
|
| -
|
| - wm::WorkspaceWindowState GetWorkspaceWindowState();
|
| -
|
| - // Returns the layout manager for the appropriate modal-container. If the
|
| - // window is inside the lockscreen modal container, then the layout manager
|
| - // for that is returned. Otherwise the layout manager for the default modal
|
| - // container is returned.
|
| - // If no window is specified (i.e. |window| is null), then the lockscreen
|
| - // modal container is used if the screen is currently locked. Otherwise, the
|
| - // default modal container is used.
|
| - SystemModalContainerLayoutManager* GetSystemModalLayoutManager(
|
| - WmWindow* window);
|
| -
|
| - bool HasShelf();
|
| -
|
| - WmShelf* GetShelf();
|
| -
|
| - // Creates the shelf for this root window and notifies observers.
|
| - void CreateShelf();
|
| -
|
| - // Show shelf view if it was created hidden (before session has started).
|
| - // TODO(jamescook): Eliminate this and handle show via Shelf.
|
| - void ShowShelf();
|
| -
|
| - // Returns the system tray controller. May be null for external displays.
|
| - SystemTray* GetSystemTray();
|
| -
|
| - // Returns the window associated with this WmRootWindowController.
|
| - WmWindow* GetWindow();
|
| -
|
| - // Gets the WmWindow whose shell window id is |container_id|.
|
| - WmWindow* GetContainer(int container_id);
|
| - const WmWindow* GetContainer(int container_id) const;
|
| -
|
| - // Configures |init_params| prior to initializing |widget|.
|
| - // |shell_container_id| is the id of the container to parent |widget| to.
|
| - void ConfigureWidgetInitParamsForContainer(
|
| - views::Widget* widget,
|
| - int shell_container_id,
|
| - views::Widget::InitParams* init_params);
|
| -
|
| - // Returns the window events will be targeted at for the specified location
|
| - // (in screen coordinates).
|
| - //
|
| - // NOTE: the returned window may not contain the location as resize handles
|
| - // may extend outside the bounds of the window.
|
| - WmWindow* FindEventTarget(const gfx::Point& location_in_screen);
|
| -
|
| - // Gets the last location seen in a mouse event in this root window's
|
| - // coordinates. This may return a point outside the root window's bounds.
|
| - gfx::Point GetLastMouseLocationInRoot();
|
| -
|
| - // Shows a context menu at the |location_in_screen|.
|
| - void ShowContextMenu(const gfx::Point& location_in_screen,
|
| - ui::MenuSourceType source_type);
|
| -
|
| - // Called when the wallpaper animation has started or finished.
|
| - // TODO: port remaining classic ash wallpaper functionality here.
|
| - void OnInitialWallpaperAnimationStarted();
|
| - void OnWallpaperAnimationFinished(views::Widget* widget);
|
| -
|
| - // Called when the login status changes after login (such as lock/unlock).
|
| - // TODO(oshima): Investigate if we can merge this and |OnLoginStateChanged|.
|
| - virtual void UpdateAfterLoginStatusChange(LoginStatus status);
|
| -
|
| - protected:
|
| - // Moves child windows to |dest|.
|
| - void MoveWindowsTo(WmWindow* dest);
|
| -
|
| - // Creates the containers (WmWindows) used by the shell.
|
| - void CreateContainers();
|
| -
|
| - // Creates the LayoutManagers for the windows created by CreateContainers().
|
| - void CreateLayoutManagers();
|
| -
|
| - // Resets WmShell::GetRootWindowForNewWindows() if appropriate. This is called
|
| - // during shutdown to make sure GetRootWindowForNewWindows() isn't referencing
|
| - // this.
|
| - void ResetRootForNewWindowsIfNecessary();
|
| -
|
| - // Called during shutdown to destroy state such as windows and LayoutManagers.
|
| - void CloseChildWindows();
|
| -
|
| - private:
|
| - friend class RootWindowController;
|
| -
|
| - // Called from CloseChildWindows() to determine if the specified window should
|
| - // be destroyed.
|
| - bool ShouldDestroyWindowInCloseChildWindows(WmWindow* window);
|
| -
|
| - // Callback for MenuModelAdapter.
|
| - void OnMenuClosed();
|
| -
|
| - // TODO(sky): remove this, needed until merge two classes.
|
| - RootWindowController* root_window_controller_;
|
| -
|
| - WmWindow* root_;
|
| -
|
| - // LayoutManagers are owned by the window they are installed on.
|
| - DockedWindowLayoutManager* docked_window_layout_manager_ = nullptr;
|
| - PanelLayoutManager* panel_layout_manager_ = nullptr;
|
| - wm::RootWindowLayoutManager* root_window_layout_manager_ = nullptr;
|
| -
|
| - std::unique_ptr<WallpaperWidgetController> wallpaper_widget_controller_;
|
| - std::unique_ptr<AnimatingWallpaperWidgetController>
|
| - animating_wallpaper_widget_controller_;
|
| - std::unique_ptr<WorkspaceController> workspace_controller_;
|
| -
|
| - std::unique_ptr<AlwaysOnTopController> always_on_top_controller_;
|
| -
|
| - // Manages the context menu.
|
| - std::unique_ptr<ui::MenuModel> menu_model_;
|
| - std::unique_ptr<views::MenuModelAdapter> menu_model_adapter_;
|
| - std::unique_ptr<views::MenuRunner> menu_runner_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(WmRootWindowController);
|
| -};
|
| -
|
| -} // namespace ash
|
| -
|
| -#endif // ASH_COMMON_WM_ROOT_WINDOW_CONTROLLER_H_
|
|
|