summaryrefslogtreecommitdiffstats
path: root/Source/WebKit/android/plugins
diff options
context:
space:
mode:
authorDerek Sollenberger <djsollen@google.com>2011-10-12 15:22:02 -0400
committerDerek Sollenberger <djsollen@google.com>2011-10-12 15:39:28 -0400
commit196a1c3a9cbc24ea20708ec0a6ad8810e2036109 (patch)
treede3486c8a003bf53cfc5a63f4139d0398dd5f3e8 /Source/WebKit/android/plugins
parent47f387fdb2c9e81ee710f41b1e79f1419817801a (diff)
downloadexternal_webkit-196a1c3a9cbc24ea20708ec0a6ad8810e2036109.zip
external_webkit-196a1c3a9cbc24ea20708ec0a6ad8810e2036109.tar.gz
external_webkit-196a1c3a9cbc24ea20708ec0a6ad8810e2036109.tar.bz2
Ensure the frame inversion flag is immediately effective.
Previously the frame inversion state was passed to the UI thread when the layer tree was synced. This CL removes that restriction and updates it immediately by storing the state in a cross thread refcounted object. bug: 5283034 Change-Id: I58a7ea0f2ed261008b945241bc783cfee4f33466
Diffstat (limited to 'Source/WebKit/android/plugins')
-rw-r--r--Source/WebKit/android/plugins/ANPNativeWindowInterface.cpp14
1 files changed, 3 insertions, 11 deletions
diff --git a/Source/WebKit/android/plugins/ANPNativeWindowInterface.cpp b/Source/WebKit/android/plugins/ANPNativeWindowInterface.cpp
index a61e122..48b5fe7 100644
--- a/Source/WebKit/android/plugins/ANPNativeWindowInterface.cpp
+++ b/Source/WebKit/android/plugins/ANPNativeWindowInterface.cpp
@@ -62,17 +62,9 @@ static ANativeWindow* anp_acquireNativeWindow(NPP instance) {
}
static void anp_invertPluginContent(NPP instance, bool isContentInverted) {
- PluginView* pluginView = pluginViewForInstance(instance);
- PluginWidgetAndroid* pluginWidget = pluginView->platformPluginWidget();
- WebCore::MediaLayer* mediaLayer = pluginWidget->getLayer();
-
- // update the layer
- mediaLayer->invertContents(isContentInverted);
-
- //force the layer to sync to the UI thread
- WebViewCore* wvc = pluginWidget->webViewCore();
- if (wvc)
- wvc->mainFrame()->page()->chrome()->client()->scheduleCompositingLayerSync();
+ WebCore::MediaLayer* mediaLayer = mediaLayerForInstance(instance);
+ if (mediaLayer)
+ mediaLayer->invertContents(isContentInverted);
}