OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 UI_AURA_ROOT_WINDOW_HOST_H_ | 5 #ifndef UI_AURA_ROOT_WINDOW_HOST_H_ |
6 #define UI_AURA_ROOT_WINDOW_HOST_H_ | 6 #define UI_AURA_ROOT_WINDOW_HOST_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
142 // Called when the device scale factor of the root window has chagned. | 142 // Called when the device scale factor of the root window has chagned. |
143 virtual void OnDeviceScaleFactorChanged(float device_scale_factor) = 0; | 143 virtual void OnDeviceScaleFactorChanged(float device_scale_factor) = 0; |
144 | 144 |
145 // Stop listening events in preparation for shutdown. | 145 // Stop listening events in preparation for shutdown. |
146 virtual void PrepareForShutdown() = 0; | 146 virtual void PrepareForShutdown() = 0; |
147 | 147 |
148 protected: | 148 protected: |
149 friend class TestScreen; // TODO(beng): see if we can remove/consolidate. | 149 friend class TestScreen; // TODO(beng): see if we can remove/consolidate. |
150 | 150 |
151 RootWindowHost(); | 151 RootWindowHost(); |
| 152 void DestroyCompositor() { compositor_.reset(); } |
152 | 153 |
153 void CreateCompositor(gfx::AcceleratedWidget accelerated_widget); | 154 void CreateCompositor(gfx::AcceleratedWidget accelerated_widget); |
154 | 155 |
155 // Returns the location of the RootWindow on native screen. | 156 // Returns the location of the RootWindow on native screen. |
156 virtual gfx::Point GetLocationOnNativeScreen() const = 0; | 157 virtual gfx::Point GetLocationOnNativeScreen() const = 0; |
157 | 158 |
158 void NotifyHostResized(const gfx::Size& new_size); | 159 void NotifyHostResized(const gfx::Size& new_size); |
159 | 160 |
160 RootWindowHostDelegate* delegate_; | 161 RootWindowHostDelegate* delegate_; |
161 | 162 |
162 private: | 163 private: |
163 scoped_ptr<ui::Compositor> compositor_; | 164 scoped_ptr<ui::Compositor> compositor_; |
164 | 165 |
165 scoped_ptr<RootWindowTransformer> transformer_; | 166 scoped_ptr<RootWindowTransformer> transformer_; |
166 | 167 |
167 DISALLOW_COPY_AND_ASSIGN(RootWindowHost); | 168 DISALLOW_COPY_AND_ASSIGN(RootWindowHost); |
168 }; | 169 }; |
169 | 170 |
170 } // namespace aura | 171 } // namespace aura |
171 | 172 |
172 #endif // UI_AURA_ROOT_WINDOW_HOST_H_ | 173 #endif // UI_AURA_ROOT_WINDOW_HOST_H_ |
OLD | NEW |