summaryrefslogtreecommitdiffstats
path: root/WebKit/android/plugins/PluginWidgetAndroid.h
diff options
context:
space:
mode:
Diffstat (limited to 'WebKit/android/plugins/PluginWidgetAndroid.h')
-rw-r--r--WebKit/android/plugins/PluginWidgetAndroid.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/WebKit/android/plugins/PluginWidgetAndroid.h b/WebKit/android/plugins/PluginWidgetAndroid.h
index 24ef69b..ef3e40c 100644
--- a/WebKit/android/plugins/PluginWidgetAndroid.h
+++ b/WebKit/android/plugins/PluginWidgetAndroid.h
@@ -125,13 +125,26 @@ struct PluginWidgetAndroid {
*/
void setVisibleRects(const ANPRectI rects[], int32_t count);
- /** Returns a java object that implements the WebkitPlugin interface. The
+ /** Returns a java object that implements the WebkitPlugin interface. The
implementation is located in the plugin's apk and is described in the
apk's manifest file. For each plugin instance in webkit there is at
most one instance of the java object associated with that plugin.
*/
jobject getJavaPluginInstance();
+ /** Called when a plugin wishes to enter into full screen mode. It invokes
+ the plugin's Java class (defined in the plugin's apk manifest), which is
+ called asynchronously and provides a View to be displayed full screen.
+ */
+ void requestFullScreen();
+
+ /** Called when a plugin wishes to exit from full screen mode. As a result,
+ the plugin's full-screen view is discarded by the view system. It is also
+ called in order to notify the native code that the browser has discarded
+ the view.
+ */
+ void exitFullScreen(bool pluginInitiated);
+
private:
WebCore::IntPoint frameToDocumentCoords(int frameX, int frameY) const;
void computeVisibleFrameRect();
@@ -147,9 +160,10 @@ private:
SkIRect m_visibleDocRect;
SkIRect m_requestedFrameRect;
bool m_hasFocus;
+ bool m_isFullScreen;
float m_zoomLevel;
- jobject m_childView;
jobject m_webkitPlugin;
+ jobject m_embeddedView;
/* We limit the number of rectangles to minimize storage and ensure adequate
speed.