OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 CONTENT_PUBLIC_BROWSER_ANDROID_COMPOSITOR_CLIENT_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_ANDROID_COMPOSITOR_CLIENT_H_ |
6 #define CONTENT_PUBLIC_BROWSER_ANDROID_COMPOSITOR_CLIENT_H_ | 6 #define CONTENT_PUBLIC_BROWSER_ANDROID_COMPOSITOR_CLIENT_H_ |
7 | 7 |
8 #include "content/common/content_export.h" | 8 #include "content/common/content_export.h" |
9 | 9 |
10 namespace content { | 10 namespace content { |
11 | 11 |
12 class CONTENT_EXPORT CompositorClient { | 12 class CONTENT_EXPORT CompositorClient { |
13 public: | 13 public: |
14 // Tells the client that it should schedule a composite. | 14 // Gives the client a chance for layout changes before compositing. |
15 virtual void ScheduleComposite() = 0; | 15 virtual void Layout() {} |
16 | |
17 // The compositor has completed swapping a frame. | |
18 virtual void OnSwapBuffersCompleted() {} | |
19 | 16 |
20 // The compositor will eventually swap a frame. | 17 // The compositor will eventually swap a frame. |
21 virtual void OnSwapBuffersPosted() {} | 18 virtual void OnSwapBuffersPosted() {} |
22 | 19 |
23 // Tells the client that GL resources were lost and need to be reinitialized. | 20 // Tells the client that GL resources were lost and need to be reinitialized. |
24 virtual void DidLoseResources() {} | 21 virtual void DidLoseResources() {} |
25 | 22 |
26 // Tells the client that UI resources were lost and need to be reinitialized. | 23 // Tells the client that UI resources were lost and need to be reinitialized. |
27 virtual void DidLoseUIResources() {} | 24 virtual void DidLoseUIResources() {} |
28 | 25 |
29 // Mark the UI Resources as being invalid for use. | 26 // Mark the UI Resources as being invalid for use. |
30 virtual void UIResourcesAreInvalid() {} | 27 virtual void UIResourcesAreInvalid() {} |
31 | 28 |
32 protected: | 29 protected: |
33 CompositorClient() {} | 30 CompositorClient() {} |
34 virtual ~CompositorClient() {} | 31 virtual ~CompositorClient() {} |
35 | 32 |
36 private: | 33 private: |
37 DISALLOW_COPY_AND_ASSIGN(CompositorClient); | 34 DISALLOW_COPY_AND_ASSIGN(CompositorClient); |
38 }; | 35 }; |
39 | 36 |
40 } // namespace content | 37 } // namespace content |
41 | 38 |
42 #endif // CONTENT_PUBLIC_BROWSER_ANDROID_COMPOSITOR_CLIENT_H_ | 39 #endif // CONTENT_PUBLIC_BROWSER_ANDROID_COMPOSITOR_CLIENT_H_ |
OLD | NEW |