Index: ash/wm_shell.h |
diff --git a/ash/wm_shell.h b/ash/wm_shell.h |
deleted file mode 100644 |
index 2215f40d4ab140bed0a5e8ce5768c12f77f5809a..0000000000000000000000000000000000000000 |
--- a/ash/wm_shell.h |
+++ /dev/null |
@@ -1,234 +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_WM_SHELL_H_ |
-#define ASH_WM_SHELL_H_ |
- |
-#include <stdint.h> |
- |
-#include <memory> |
-#include <vector> |
- |
-#include "ash/ash_export.h" |
-#include "ash/metrics/gesture_action_type.h" |
-#include "ash/metrics/user_metrics_action.h" |
-#include "ash/wm/lock_state_observer.h" |
-#include "base/observer_list.h" |
-#include "ui/base/ui_base_types.h" |
-#include "ui/compositor/layer_type.h" |
-#include "ui/wm/public/activation_change_observer.h" |
-#include "ui/wm/public/window_types.h" |
- |
-namespace display { |
-class Display; |
-class ManagedDisplayInfo; |
-} |
- |
-namespace gfx { |
-class Insets; |
-class Point; |
-} |
- |
-namespace views { |
-class PointerWatcher; |
-enum class PointerWatcherEventTypes; |
-} |
- |
-namespace ash { |
-class AcceleratorController; |
-class ImmersiveFullscreenController; |
-class KeyEventWatcher; |
-class KeyboardUI; |
-class RootWindowController; |
-class ScopedDisableInternalMouseAndKeyboard; |
-class SessionStateDelegate; |
-struct ShellInitParams; |
-class WindowCycleEventFilter; |
-class WindowResizer; |
-class WmDisplayObserver; |
-class WmWindow; |
-class WorkspaceEventHandler; |
- |
-enum class Config; |
-enum class LoginStatus; |
-enum class TaskSwitchSource; |
- |
-namespace wm { |
-class MaximizeModeEventHandler; |
-class WindowState; |
-} |
- |
-// Similar to ash::Shell. Eventually the two will be merged. |
-class ASH_EXPORT WmShell { |
- public: |
- virtual ~WmShell(); |
- |
- static WmShell* Get(); |
- static bool HasInstance() { return instance_ != nullptr; } |
- |
- virtual void Shutdown(); |
- |
- // Returns true when ash is running as a service_manager::Service. |
- // TODO(sky): remove and convert to GetAshConfig(). |
- virtual bool IsRunningInMash() const = 0; |
- virtual Config GetAshConfig() const = 0; |
- |
- // Convenience for GetPrimaryRootWindow()->GetRootWindowController(). |
- RootWindowController* GetPrimaryRootWindowController(); |
- |
- virtual WmWindow* GetPrimaryRootWindow() = 0; |
- |
- // Returns the root window for the specified display. |
- virtual WmWindow* GetRootWindowForDisplayId(int64_t display_id) = 0; |
- |
- // Retuns the display info associated with |display_id|. |
- // TODO(mash): Remove when DisplayManager has been moved. crbug.com/622480 |
- virtual const display::ManagedDisplayInfo& GetDisplayInfo( |
- int64_t display_id) const = 0; |
- |
- // Matches that of DisplayManager::IsActiveDisplayId(). |
- // TODO(mash): Remove when DisplayManager has been moved. crbug.com/622480 |
- virtual bool IsActiveDisplayId(int64_t display_id) const = 0; |
- |
- // Returns true if the desktop is in unified mode and there are no mirroring |
- // displays. |
- // TODO(mash): Remove when DisplayManager has been moved. crbug.com/622480 |
- virtual bool IsInUnifiedMode() const = 0; |
- |
- // Returns true if the desktop is in unified mode. |
- // TODO(mash): Remove when DisplayManager has been moved. crbug.com/622480 |
- virtual bool IsInUnifiedModeIgnoreMirroring() const = 0; |
- |
- // Returns the first display; this is the first display listed by hardware, |
- // which corresponds to internal displays on devices with integrated displays. |
- // TODO(mash): Remove when DisplayManager has been moved. crbug.com/622480 |
- virtual display::Display GetFirstDisplay() const = 0; |
- |
- // Returns true if the first window shown on first run should be |
- // unconditionally maximized, overriding the heuristic that normally chooses |
- // the window size. |
- bool IsForceMaximizeOnFirstRun(); |
- |
- // Sets work area insets of the display containing |window|, pings observers. |
- virtual void SetDisplayWorkAreaInsets(WmWindow* window, |
- const gfx::Insets& insets) = 0; |
- |
- // Returns true if a system-modal dialog window is currently open. |
- bool IsSystemModalWindowOpen(); |
- |
- // Creates a modal background (a partially-opaque fullscreen window) on all |
- // displays for |window|. |
- void CreateModalBackground(WmWindow* window); |
- |
- // Called when a modal window is removed. It will activate another modal |
- // window if any, or remove modal screens on all displays. |
- void OnModalWindowRemoved(WmWindow* removed); |
- |
- // For testing only: set simulation that a modal window is open |
- void SimulateModalWindowOpenForTesting(bool modal_window_open) { |
- simulate_modal_window_open_for_testing_ = modal_window_open; |
- } |
- |
- // See aura::client::CursorClient for details on these. |
- virtual void LockCursor() = 0; |
- virtual void UnlockCursor() = 0; |
- virtual bool IsMouseEventsEnabled() = 0; |
- |
- virtual std::vector<WmWindow*> GetAllRootWindows() = 0; |
- |
- virtual void RecordGestureAction(GestureActionType action) = 0; |
- virtual void RecordUserMetricsAction(UserMetricsAction action) = 0; |
- virtual void RecordTaskSwitchMetric(TaskSwitchSource source) = 0; |
- |
- // Shows the context menu for the wallpaper or shelf at |location_in_screen|. |
- void ShowContextMenu(const gfx::Point& location_in_screen, |
- ui::MenuSourceType source_type); |
- |
- // Returns a WindowResizer to handle dragging. |next_window_resizer| is |
- // the next WindowResizer in the WindowResizer chain. This may return |
- // |next_window_resizer|. |
- virtual std::unique_ptr<WindowResizer> CreateDragWindowResizer( |
- std::unique_ptr<WindowResizer> next_window_resizer, |
- wm::WindowState* window_state) = 0; |
- |
- virtual std::unique_ptr<WindowCycleEventFilter> |
- CreateWindowCycleEventFilter() = 0; |
- |
- virtual std::unique_ptr<wm::MaximizeModeEventHandler> |
- CreateMaximizeModeEventHandler() = 0; |
- |
- virtual std::unique_ptr<WorkspaceEventHandler> CreateWorkspaceEventHandler( |
- WmWindow* workspace_window) = 0; |
- |
- virtual std::unique_ptr<ScopedDisableInternalMouseAndKeyboard> |
- CreateScopedDisableInternalMouseAndKeyboard() = 0; |
- |
- virtual std::unique_ptr<ImmersiveFullscreenController> |
- CreateImmersiveFullscreenController() = 0; |
- |
- // Creates the KeyboardUI. This is called early on. |
- virtual std::unique_ptr<KeyboardUI> CreateKeyboardUI() = 0; |
- |
- virtual std::unique_ptr<KeyEventWatcher> CreateKeyEventWatcher() = 0; |
- |
- virtual SessionStateDelegate* GetSessionStateDelegate() = 0; |
- |
- virtual void AddDisplayObserver(WmDisplayObserver* observer) = 0; |
- virtual void RemoveDisplayObserver(WmDisplayObserver* observer) = 0; |
- |
- // If |events| is PointerWatcherEventTypes::MOVES, |
- // PointerWatcher::OnPointerEventObserved() is called for pointer move events. |
- // If |events| is PointerWatcherEventTypes::DRAGS, |
- // PointerWatcher::OnPointerEventObserved() is called for pointer drag events. |
- // Requesting pointer moves or drags may incur a performance hit and should be |
- // avoided if possible. |
- virtual void AddPointerWatcher(views::PointerWatcher* watcher, |
- views::PointerWatcherEventTypes events) = 0; |
- virtual void RemovePointerWatcher(views::PointerWatcher* watcher) = 0; |
- |
- // TODO: Move these back to LockStateController when that has been moved. |
- void OnLockStateEvent(LockStateObserver::EventType event); |
- void AddLockStateObserver(LockStateObserver* observer); |
- void RemoveLockStateObserver(LockStateObserver* observer); |
- |
- // True if any touch points are down. |
- virtual bool IsTouchDown() = 0; |
- |
- // TODO(jamescook): Remove this when VirtualKeyboardController has been moved. |
- virtual void ToggleIgnoreExternalKeyboard() = 0; |
- |
- // Enable or disable the laser pointer. |
- virtual void SetLaserPointerEnabled(bool enabled) = 0; |
- |
- // Enable or disable the partial magnifier. |
- virtual void SetPartialMagnifierEnabled(bool enabled) = 0; |
- |
- virtual void CreatePointerWatcherAdapter() = 0; |
- |
- protected: |
- WmShell(); |
- |
- // Called during startup to create the primary WindowTreeHost and |
- // the corresponding RootWindowController. |
- virtual void CreatePrimaryHost() = 0; |
- virtual void InitHosts(const ShellInitParams& init_params) = 0; |
- |
- // Called during startup to create the AcceleratorController. |
- virtual std::unique_ptr<AcceleratorController> |
- CreateAcceleratorController() = 0; |
- |
- private: |
- friend class AcceleratorControllerTest; |
- friend class Shell; |
- |
- static WmShell* instance_; |
- |
- base::ObserverList<LockStateObserver> lock_state_observers_; |
- |
- bool simulate_modal_window_open_for_testing_ = false; |
-}; |
- |
-} // namespace ash |
- |
-#endif // ASH_WM_SHELL_H_ |