| Index: chrome/browser/ui/panels/display_settings_provider.h
|
| diff --git a/chrome/browser/ui/panels/display_settings_provider.h b/chrome/browser/ui/panels/display_settings_provider.h
|
| deleted file mode 100644
|
| index e95e7966d3af86212cc57cb8f240d99aeb717fdb..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/ui/panels/display_settings_provider.h
|
| +++ /dev/null
|
| @@ -1,158 +0,0 @@
|
| -// Copyright (c) 2012 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 CHROME_BROWSER_UI_PANELS_DISPLAY_SETTINGS_PROVIDER_H_
|
| -#define CHROME_BROWSER_UI_PANELS_DISPLAY_SETTINGS_PROVIDER_H_
|
| -
|
| -#include "base/macros.h"
|
| -#include "base/observer_list.h"
|
| -#include "base/timer/timer.h"
|
| -#include "ui/gfx/geometry/rect.h"
|
| -
|
| -// Encapsulates the logic to provide display settings support, including the
|
| -// information for:
|
| -// 1) Work area
|
| -// 2) Auto-hiding desktop bars, like Windows taskbar and MacOSX dock.
|
| -class DisplaySettingsProvider {
|
| - public:
|
| - // Indicates which screen edge the desktop bar is aligned to.
|
| - // We do not care about the desktop aligned to the top screen edge.
|
| - enum DesktopBarAlignment {
|
| - DESKTOP_BAR_ALIGNED_BOTTOM = 0,
|
| - DESKTOP_BAR_ALIGNED_LEFT = 1,
|
| - DESKTOP_BAR_ALIGNED_RIGHT = 2
|
| - };
|
| -
|
| - // Indicates current visibility state of the desktop bar.
|
| - enum DesktopBarVisibility {
|
| - DESKTOP_BAR_VISIBLE,
|
| - DESKTOP_BAR_ANIMATING,
|
| - DESKTOP_BAR_HIDDEN
|
| - };
|
| -
|
| - class DisplayObserver {
|
| - public:
|
| - virtual void OnDisplayChanged() = 0;
|
| - };
|
| -
|
| - class DesktopBarObserver {
|
| - public:
|
| - virtual void OnAutoHidingDesktopBarVisibilityChanged(
|
| - DesktopBarAlignment alignment, DesktopBarVisibility visibility) = 0;
|
| - virtual void OnAutoHidingDesktopBarThicknessChanged(
|
| - DesktopBarAlignment alignment, int thickness) = 0;
|
| - };
|
| -
|
| - class FullScreenObserver {
|
| - public:
|
| - virtual void OnFullScreenModeChanged(bool is_full_screen) = 0;
|
| - };
|
| -
|
| - static DisplaySettingsProvider* Create();
|
| -
|
| - virtual ~DisplaySettingsProvider();
|
| -
|
| - // Subscribes/unsubscribes from the display settings change notification.
|
| - void AddDisplayObserver(DisplayObserver* observer);
|
| - void RemoveDisplayObserver(DisplayObserver* observer);
|
| -
|
| - void AddDesktopBarObserver(DesktopBarObserver* observer);
|
| - void RemoveDesktopBarObserver(DesktopBarObserver* observer);
|
| -
|
| - void AddFullScreenObserver(FullScreenObserver* observer);
|
| - void RemoveFullScreenObserver(FullScreenObserver* observer);
|
| -
|
| - //
|
| - // Display Area:
|
| - // This is the area of a display (monitor). There could be multiple display
|
| - // areas.
|
| - // Work Area:
|
| - // This is the standard work area returned by the system. It is usually
|
| - // computed by the system as the part of display area that excludes
|
| - // top-most system menu or bars aligned to the screen edges.
|
| - //
|
| -
|
| - // Returns the bounds of primary display.
|
| - virtual gfx::Rect GetPrimaryDisplayArea() const;
|
| -
|
| - // Returns the bounds of the work area of primary display.
|
| - virtual gfx::Rect GetPrimaryWorkArea() const;
|
| -
|
| - // Returns the bounds of the display area that most closely intersects the
|
| - // provided bounds.
|
| - virtual gfx::Rect GetDisplayAreaMatching(const gfx::Rect& bounds) const;
|
| -
|
| - // Returns the bounds of the work area that most closely intersects the
|
| - // provided bounds.
|
| - virtual gfx::Rect GetWorkAreaMatching(const gfx::Rect& bounds) const;
|
| -
|
| - // Invoked when the display settings has changed, due to any of the following:
|
| - // 1) screen resolution changes
|
| - // 2) the thickness of desktop bar changes
|
| - // 3) desktop bar switches between auto-hiding and non-auto-hiding
|
| - virtual void OnDisplaySettingsChanged();
|
| -
|
| - // Returns true if there is a desktop bar that is aligned to the specified
|
| - // screen edge and set to auto-hide.
|
| - virtual bool IsAutoHidingDesktopBarEnabled(DesktopBarAlignment alignment);
|
| -
|
| - // Returns the thickness of the desktop bar that is aligned to the specified
|
| - // screen edge, when it is visible. When the desktop bar is aligned to bottom
|
| - // edge, this is the height of the bar. If the desktop bar is aligned to
|
| - // left or right edge, this is the width of the bar.
|
| - virtual int GetDesktopBarThickness(DesktopBarAlignment alignment) const;
|
| -
|
| - // Returns the visibility state of the desktop bar that is aligned to the
|
| - // specified screen edge.
|
| - virtual DesktopBarVisibility GetDesktopBarVisibility(
|
| - DesktopBarAlignment alignment) const;
|
| -
|
| - base::ObserverList<DisplayObserver>& display_observers() {
|
| - return display_observers_;
|
| - }
|
| -
|
| - base::ObserverList<DesktopBarObserver>& desktop_bar_observers() {
|
| - return desktop_bar_observers_;
|
| - }
|
| -
|
| - base::ObserverList<FullScreenObserver>& full_screen_observers() {
|
| - return full_screen_observers_;
|
| - }
|
| -
|
| - bool is_full_screen() const { return is_full_screen_; }
|
| -
|
| - protected:
|
| - enum FullScreenCheckMode {
|
| - ASSUME_FULLSCREEN_ON,
|
| - ASSUME_FULLSCREEN_OFF,
|
| - PERFORM_FULLSCREEN_CHECK
|
| - };
|
| -
|
| - DisplaySettingsProvider();
|
| -
|
| - // Returns true if we need to perform fullscreen check periodically.
|
| - virtual bool NeedsPeriodicFullScreenCheck() const;
|
| -
|
| - // Returns true if full screen or presentation mode in main screen is entered.
|
| - virtual bool IsFullScreen();
|
| -
|
| - // Callback to perform periodic check for full screen mode changes.
|
| - void CheckFullScreenMode(FullScreenCheckMode check_mode);
|
| -
|
| - private:
|
| - // Observers that listen to various display settings changes.
|
| - base::ObserverList<DisplayObserver> display_observers_;
|
| - base::ObserverList<DesktopBarObserver> desktop_bar_observers_;
|
| - base::ObserverList<FullScreenObserver> full_screen_observers_;
|
| -
|
| - // True if full screen mode or presentation mode is entered.
|
| - bool is_full_screen_;
|
| -
|
| - // Timer used to detect full-screen mode change.
|
| - base::RepeatingTimer full_screen_mode_timer_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(DisplaySettingsProvider);
|
| -};
|
| -
|
| -#endif // CHROME_BROWSER_UI_PANELS_DISPLAY_SETTINGS_PROVIDER_H_
|
|
|