Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(21)

Side by Side Diff: ui/aura/screen_aura.h

Issue 9689027: MonitorManager to manage multiple monitors. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: crash fix Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef UI_AURA_SCREEN_AURA_H_ 5 #ifndef UI_AURA_SCREEN_AURA_H_
6 #define UI_AURA_SCREEN_AURA_H_ 6 #define UI_AURA_SCREEN_AURA_H_
7 #pragma once 7 #pragma once
8 8
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "ui/aura/aura_export.h" 10 #include "ui/aura/aura_export.h"
11 #include "ui/gfx/insets.h"
12 #include "ui/gfx/screen.h" 11 #include "ui/gfx/screen.h"
13 12
14 namespace aura { 13 namespace aura {
15 14
16 class RootWindow; 15 class RootWindow;
17 16
18 // Aura implementation of gfx::Screen. Implemented here to avoid circular 17 // Aura implementation of gfx::Screen. Implemented here to avoid circular
19 // dependencies. 18 // dependencies.
20 class AURA_EXPORT ScreenAura : public gfx::Screen { 19 class AURA_EXPORT ScreenAura : public gfx::Screen {
21 public: 20 public:
22 explicit ScreenAura(RootWindow* root_window); 21 explicit ScreenAura(RootWindow* root_window);
23 virtual ~ScreenAura(); 22 virtual ~ScreenAura();
24 23
25 void set_work_area_insets(const gfx::Insets& insets) {
26 work_area_insets_ = insets;
27 }
28 const gfx::Insets& work_area_insets() const { return work_area_insets_; }
29
30 protected: 24 protected:
31 virtual gfx::Point GetCursorScreenPointImpl() OVERRIDE; 25 virtual gfx::Point GetCursorScreenPointImpl() OVERRIDE;
32 virtual gfx::Rect GetMonitorWorkAreaNearestWindowImpl( 26 virtual gfx::Rect GetMonitorWorkAreaNearestWindowImpl(
33 gfx::NativeView view) OVERRIDE; 27 gfx::NativeView view) OVERRIDE;
34 virtual gfx::Rect GetMonitorAreaNearestWindowImpl( 28 virtual gfx::Rect GetMonitorAreaNearestWindowImpl(
35 gfx::NativeView view) OVERRIDE; 29 gfx::NativeView view) OVERRIDE;
36 virtual gfx::Rect GetMonitorWorkAreaNearestPointImpl( 30 virtual gfx::Rect GetMonitorWorkAreaNearestPointImpl(
37 const gfx::Point& point) OVERRIDE; 31 const gfx::Point& point) OVERRIDE;
38 virtual gfx::Rect GetMonitorAreaNearestPointImpl( 32 virtual gfx::Rect GetMonitorAreaNearestPointImpl(
39 const gfx::Point& point) OVERRIDE; 33 const gfx::Point& point) OVERRIDE;
40 virtual gfx::NativeWindow GetWindowAtCursorScreenPointImpl() OVERRIDE; 34 virtual gfx::NativeWindow GetWindowAtCursorScreenPointImpl() OVERRIDE;
41 virtual gfx::Size GetPrimaryMonitorSizeImpl() OVERRIDE; 35 virtual gfx::Size GetPrimaryMonitorSizeImpl() OVERRIDE;
42 virtual int GetNumMonitorsImpl() OVERRIDE; 36 virtual int GetNumMonitorsImpl() OVERRIDE;
43 37
44 private: 38 private:
45 // We currently support only one monitor. These two methods return the bounds
46 // and work area.
47 gfx::Rect GetBounds();
48 gfx::Rect GetWorkAreaBounds();
49
50 // Insets for the work area.
51 gfx::Insets work_area_insets_;
52
53 RootWindow* root_window_; 39 RootWindow* root_window_;
54
55 DISALLOW_COPY_AND_ASSIGN(ScreenAura); 40 DISALLOW_COPY_AND_ASSIGN(ScreenAura);
56 }; 41 };
57 42
58 } // namespace aura 43 } // namespace aura
59 44
60 #endif // UI_AURA_SCREEN_AURA_H_ 45 #endif // UI_AURA_SCREEN_AURA_H_
OLDNEW
« ui/aura/monitor.h ('K') | « ui/aura/root_window_observer.h ('k') | ui/aura/screen_aura.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698