summaryrefslogtreecommitdiffstats
path: root/WebKit/android/plugins
diff options
context:
space:
mode:
authorDerek Sollenberger <djsollen@google.com>2009-12-09 15:44:37 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2009-12-09 15:44:37 -0800
commitd24133a9678b18bf5e1e9c0edd14fc8e9d2a1d45 (patch)
tree07feedde2b9064535a2c2e0e3840cf87dde26686 /WebKit/android/plugins
parentf5cee3f030cb360beccf7cb4e9c71e791076b891 (diff)
parentdcab27c390251a3b534b8eeb1fa5b8301686b1ab (diff)
downloadexternal_webkit-d24133a9678b18bf5e1e9c0edd14fc8e9d2a1d45.zip
external_webkit-d24133a9678b18bf5e1e9c0edd14fc8e9d2a1d45.tar.gz
external_webkit-d24133a9678b18bf5e1e9c0edd14fc8e9d2a1d45.tar.bz2
am dcab27c3: Switching from activity based full screen plugins to a view system overlay.
Merge commit 'dcab27c390251a3b534b8eeb1fa5b8301686b1ab' into eclair-mr2-plus-aosp * commit 'dcab27c390251a3b534b8eeb1fa5b8301686b1ab': Switching from activity based full screen plugins to a view system overlay.
Diffstat (limited to 'WebKit/android/plugins')
-rw-r--r--WebKit/android/plugins/ANPWindowInterface.cpp10
-rw-r--r--WebKit/android/plugins/android_npapi.h4
2 files changed, 13 insertions, 1 deletions
diff --git a/WebKit/android/plugins/ANPWindowInterface.cpp b/WebKit/android/plugins/ANPWindowInterface.cpp
index 543332d..6d7b8e5 100644
--- a/WebKit/android/plugins/ANPWindowInterface.cpp
+++ b/WebKit/android/plugins/ANPWindowInterface.cpp
@@ -55,7 +55,14 @@ static void anp_showKeyboard(NPP instance, bool value) {
static void anp_requestFullScreen(NPP instance) {
PluginView* pluginView = pluginViewForInstance(instance);
PluginWidgetAndroid* pluginWidget = pluginView->platformPluginWidget();
- pluginWidget->webViewCore()->startFullScreenPluginActivity(instance);
+ jobject javaPlugin = pluginWidget->getJavaPluginInstance();
+ pluginWidget->webViewCore()->showFullScreenPlugin(javaPlugin);
+}
+
+static void anp_exitFullScreen(NPP instance) {
+ PluginView* pluginView = pluginViewForInstance(instance);
+ PluginWidgetAndroid* pluginWidget = pluginView->platformPluginWidget();
+ pluginWidget->webViewCore()->hideFullScreenPlugin();
}
///////////////////////////////////////////////////////////////////////////////
@@ -69,4 +76,5 @@ void ANPWindowInterfaceV0_Init(ANPInterface* value) {
ASSIGN(i, clearVisibleRects);
ASSIGN(i, showKeyboard);
ASSIGN(i, requestFullScreen);
+ ASSIGN(i, exitFullScreen);
}
diff --git a/WebKit/android/plugins/android_npapi.h b/WebKit/android/plugins/android_npapi.h
index 40a31fa..e52debb 100644
--- a/WebKit/android/plugins/android_npapi.h
+++ b/WebKit/android/plugins/android_npapi.h
@@ -647,6 +647,10 @@ struct ANPWindowInterfaceV0 : ANPInterface {
asynchronously to provide a View object to be displayed full screen.
*/
void (*requestFullScreen)(NPP instance);
+ /** Called when a plugin wishes to exit from full screen mode. As a result,
+ the plugin's full screen view will be discarded by the view system.
+ */
+ void (*exitFullScreen)(NPP instance);
};
///////////////////////////////////////////////////////////////////////////////