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