OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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 CHROME_BROWSER_UI_VIEWS_FRAME_IMMERSIVE_MODE_CONTROLLER_ASH_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_FRAME_IMMERSIVE_MODE_CONTROLLER_ASH_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_FRAME_IMMERSIVE_MODE_CONTROLLER_ASH_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_FRAME_IMMERSIVE_MODE_CONTROLLER_ASH_H_ |
7 | 7 |
8 #include "chrome/browser/ui/views/frame/immersive_mode_controller.h" | 8 #include "chrome/browser/ui/views/frame/immersive_mode_controller.h" |
9 | 9 |
10 #include "base/timer/timer.h" | 10 #include "base/timer/timer.h" |
11 #include "content/public/browser/notification_observer.h" | 11 #include "content/public/browser/notification_observer.h" |
12 #include "content/public/browser/notification_registrar.h" | 12 #include "content/public/browser/notification_registrar.h" |
13 #include "ui/aura/window_observer.h" | 13 #include "ui/aura/window_observer.h" |
14 #include "ui/base/animation/animation_delegate.h" | |
15 #include "ui/base/events/event_handler.h" | 14 #include "ui/base/events/event_handler.h" |
| 15 #include "ui/gfx/animation/animation_delegate.h" |
16 #include "ui/gfx/rect.h" | 16 #include "ui/gfx/rect.h" |
17 #include "ui/views/focus/focus_manager.h" | 17 #include "ui/views/focus/focus_manager.h" |
18 #include "ui/views/widget/widget_observer.h" | 18 #include "ui/views/widget/widget_observer.h" |
19 | 19 |
20 class BrowserView; | 20 class BrowserView; |
21 class BookmarkBarView; | 21 class BookmarkBarView; |
22 | 22 |
23 namespace aura { | 23 namespace aura { |
24 class Window; | 24 class Window; |
25 } | 25 } |
26 | 26 |
27 namespace gfx { | 27 namespace gfx { |
| 28 class SlideAnimation; |
28 class Transform; | 29 class Transform; |
29 } | 30 } |
30 | 31 |
31 namespace ui { | 32 namespace ui { |
32 class Layer; | 33 class Layer; |
33 class LocatedEvent; | 34 class LocatedEvent; |
34 class SlideAnimation; | |
35 } | 35 } |
36 | 36 |
37 namespace views { | 37 namespace views { |
38 class View; | 38 class View; |
39 } | 39 } |
40 | 40 |
41 class ImmersiveModeControllerAsh : public ImmersiveModeController, | 41 class ImmersiveModeControllerAsh : public ImmersiveModeController, |
42 public content::NotificationObserver, | 42 public content::NotificationObserver, |
43 public ui::AnimationDelegate, | 43 public gfx::AnimationDelegate, |
44 public ui::EventHandler, | 44 public ui::EventHandler, |
45 public views::FocusChangeListener, | 45 public views::FocusChangeListener, |
46 public views::WidgetObserver, | 46 public views::WidgetObserver, |
47 public aura::WindowObserver { | 47 public aura::WindowObserver { |
48 public: | 48 public: |
49 ImmersiveModeControllerAsh(); | 49 ImmersiveModeControllerAsh(); |
50 virtual ~ImmersiveModeControllerAsh(); | 50 virtual ~ImmersiveModeControllerAsh(); |
51 | 51 |
52 // These methods are used to increment and decrement |revealed_lock_count_|. | 52 // These methods are used to increment and decrement |revealed_lock_count_|. |
53 // If immersive mode is enabled, a transition from 1 to 0 in | 53 // If immersive mode is enabled, a transition from 1 to 0 in |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 virtual void OnWillChangeFocus(views::View* focused_before, | 89 virtual void OnWillChangeFocus(views::View* focused_before, |
90 views::View* focused_now) OVERRIDE; | 90 views::View* focused_now) OVERRIDE; |
91 virtual void OnDidChangeFocus(views::View* focused_before, | 91 virtual void OnDidChangeFocus(views::View* focused_before, |
92 views::View* focused_now) OVERRIDE; | 92 views::View* focused_now) OVERRIDE; |
93 | 93 |
94 // views::WidgetObserver overrides: | 94 // views::WidgetObserver overrides: |
95 virtual void OnWidgetDestroying(views::Widget* widget) OVERRIDE; | 95 virtual void OnWidgetDestroying(views::Widget* widget) OVERRIDE; |
96 virtual void OnWidgetActivationChanged(views::Widget* widget, | 96 virtual void OnWidgetActivationChanged(views::Widget* widget, |
97 bool active) OVERRIDE; | 97 bool active) OVERRIDE; |
98 | 98 |
99 // ui::AnimationDelegate overrides: | 99 // gfx::AnimationDelegate overrides: |
100 virtual void AnimationEnded(const ui::Animation* animation) OVERRIDE; | 100 virtual void AnimationEnded(const gfx::Animation* animation) OVERRIDE; |
101 virtual void AnimationProgressed(const ui::Animation* animation) OVERRIDE; | 101 virtual void AnimationProgressed(const gfx::Animation* animation) OVERRIDE; |
102 | 102 |
103 // aura::WindowObserver overrides: | 103 // aura::WindowObserver overrides: |
104 virtual void OnWindowPropertyChanged(aura::Window* window, | 104 virtual void OnWindowPropertyChanged(aura::Window* window, |
105 const void* key, | 105 const void* key, |
106 intptr_t old) OVERRIDE; | 106 intptr_t old) OVERRIDE; |
107 virtual void OnAddTransientChild(aura::Window* window, | 107 virtual void OnAddTransientChild(aura::Window* window, |
108 aura::Window* transient) OVERRIDE; | 108 aura::Window* transient) OVERRIDE; |
109 virtual void OnRemoveTransientChild(aura::Window* window, | 109 virtual void OnRemoveTransientChild(aura::Window* window, |
110 aura::Window* transient) OVERRIDE; | 110 aura::Window* transient) OVERRIDE; |
111 | 111 |
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
288 | 288 |
289 // Lock which keeps the top-of-window views revealed based on the focused view | 289 // Lock which keeps the top-of-window views revealed based on the focused view |
290 // and the active widget. Acquiring the lock never triggers a reveal because | 290 // and the active widget. Acquiring the lock never triggers a reveal because |
291 // a view is not focusable till a reveal has made it visible. | 291 // a view is not focusable till a reveal has made it visible. |
292 scoped_ptr<ImmersiveRevealedLock> focus_revealed_lock_; | 292 scoped_ptr<ImmersiveRevealedLock> focus_revealed_lock_; |
293 | 293 |
294 // Native window for the browser. | 294 // Native window for the browser. |
295 aura::Window* native_window_; | 295 aura::Window* native_window_; |
296 | 296 |
297 // The animation which controls sliding the top-of-window views in and out. | 297 // The animation which controls sliding the top-of-window views in and out. |
298 scoped_ptr<ui::SlideAnimation> animation_; | 298 scoped_ptr<gfx::SlideAnimation> animation_; |
299 | 299 |
300 // Whether the animations are disabled for testing. | 300 // Whether the animations are disabled for testing. |
301 bool animations_disabled_for_test_; | 301 bool animations_disabled_for_test_; |
302 | 302 |
303 // Manages bubbles which are anchored to a child of |top_container_|. | 303 // Manages bubbles which are anchored to a child of |top_container_|. |
304 class BubbleManager; | 304 class BubbleManager; |
305 scoped_ptr<BubbleManager> bubble_manager_; | 305 scoped_ptr<BubbleManager> bubble_manager_; |
306 | 306 |
307 content::NotificationRegistrar registrar_; | 307 content::NotificationRegistrar registrar_; |
308 | 308 |
309 base::WeakPtrFactory<ImmersiveModeControllerAsh> weak_ptr_factory_; | 309 base::WeakPtrFactory<ImmersiveModeControllerAsh> weak_ptr_factory_; |
310 | 310 |
311 DISALLOW_COPY_AND_ASSIGN(ImmersiveModeControllerAsh); | 311 DISALLOW_COPY_AND_ASSIGN(ImmersiveModeControllerAsh); |
312 }; | 312 }; |
313 | 313 |
314 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_IMMERSIVE_MODE_CONTROLLER_ASH_H_ | 314 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_IMMERSIVE_MODE_CONTROLLER_ASH_H_ |
OLD | NEW |