OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 WEBKIT_PLUGINS_PPAPI_PPB_FULLSCREEN_CONTAINER_IMPL_H_ | 5 #ifndef WEBKIT_PLUGINS_PPAPI_PPB_FULLSCREEN_CONTAINER_IMPL_H_ |
6 #define WEBKIT_PLUGINS_PPAPI_PPB_FULLSCREEN_CONTAINER_IMPL_H_ | 6 #define WEBKIT_PLUGINS_PPAPI_PPB_FULLSCREEN_CONTAINER_IMPL_H_ |
7 | 7 |
| 8 #include "webkit/plugins/ppapi/plugin_delegate.h" |
| 9 |
8 namespace WebKit { | 10 namespace WebKit { |
9 struct WebRect; | 11 struct WebRect; |
10 } // namespace WebKit | 12 } // namespace WebKit |
11 | 13 |
12 namespace webkit { | 14 namespace webkit { |
13 namespace ppapi { | 15 namespace ppapi { |
14 | 16 |
15 // This class is like a lightweight WebPluginContainer for fullscreen PPAPI | 17 // This class is like a lightweight WebPluginContainer for fullscreen PPAPI |
16 // plugins, that only handles painting. | 18 // plugins, that only handles painting. |
17 class FullscreenContainer { | 19 class FullscreenContainer { |
18 public: | 20 public: |
19 virtual ~FullscreenContainer() {} | 21 virtual ~FullscreenContainer() {} |
20 | 22 |
21 // Invalidates the full plugin region. | 23 // Invalidates the full plugin region. |
22 virtual void Invalidate() = 0; | 24 virtual void Invalidate() = 0; |
23 | 25 |
24 // Invalidates a partial region of the plugin. | 26 // Invalidates a partial region of the plugin. |
25 virtual void InvalidateRect(const WebKit::WebRect&) = 0; | 27 virtual void InvalidateRect(const WebKit::WebRect&) = 0; |
26 | 28 |
27 // Scrolls a partial region of the plugin in the given direction. | 29 // Scrolls a partial region of the plugin in the given direction. |
28 virtual void ScrollRect(int dx, int dy, const WebKit::WebRect&) = 0; | 30 virtual void ScrollRect(int dx, int dy, const WebKit::WebRect&) = 0; |
29 | 31 |
30 // Destroys the fullscreen window. This also destroys the FullscreenContainer | 32 // Destroys the fullscreen window. This also destroys the FullscreenContainer |
31 // instance. | 33 // instance. |
32 virtual void Destroy() = 0; | 34 virtual void Destroy() = 0; |
| 35 |
| 36 virtual PluginDelegate::PlatformContext3D* CreateContext3D() = 0; |
33 }; | 37 }; |
34 | 38 |
35 } // namespace ppapi | 39 } // namespace ppapi |
36 } // namespace webkit | 40 } // namespace webkit |
37 | 41 |
38 #endif // WEBKIT_PLUGINS_PPAPI_PPB_FULLSCREEN_CONTAINER_IMPL_H_ | 42 #endif // WEBKIT_PLUGINS_PPAPI_PPB_FULLSCREEN_CONTAINER_IMPL_H_ |
OLD | NEW |