diff options
author | John Reck <jreck@google.com> | 2012-03-20 10:01:59 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-03-20 10:01:59 -0700 |
commit | 92f133bc695b6812d789c6e71feab3b6a8557ad1 (patch) | |
tree | 9e567e7775afd37d3d214ee78f44ff46720480d6 /Source/WebKit/android/nav/WebView.cpp | |
parent | 696cf3d1df6a07f13757e175b190aae7dc2d405c (diff) | |
parent | a144ac64329978c258faadf3bc484cf4ae6c5d0d (diff) | |
download | external_webkit-92f133bc695b6812d789c6e71feab3b6a8557ad1.zip external_webkit-92f133bc695b6812d789c6e71feab3b6a8557ad1.tar.gz external_webkit-92f133bc695b6812d789c6e71feab3b6a8557ad1.tar.bz2 |
Merge "Canvas on a texture"
Diffstat (limited to 'Source/WebKit/android/nav/WebView.cpp')
-rw-r--r-- | Source/WebKit/android/nav/WebView.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Source/WebKit/android/nav/WebView.cpp b/Source/WebKit/android/nav/WebView.cpp index eddf0ab..0b2eaf6 100644 --- a/Source/WebKit/android/nav/WebView.cpp +++ b/Source/WebKit/android/nav/WebView.cpp @@ -633,6 +633,17 @@ void mapLayerRect(int layerId, SkIRect& rect) { } } +// This is called when WebView switches rendering modes in a more permanent fashion +// such as when the layer type is set or the view is attached/detached from the window +int setHwAccelerated(bool hwAccelerated) { + if (!m_glWebViewState) + return 0; + LayerAndroid* root = compositeRoot(); + if (root) + return root->setHwAccelerated(hwAccelerated); + return 0; +} + bool m_isDrawingPaused; private: // local state for WebView // private to getFrameCache(); other functions operate in a different thread @@ -1176,6 +1187,13 @@ static void nativeMapLayerRect(JNIEnv *env, jobject obj, jint nativeView, GraphicsJNI::irect_to_jrect(nativeRect, env, rect); } +static jint nativeSetHwAccelerated(JNIEnv *env, jobject obj, jint nativeView, + jboolean hwAccelerated) +{ + WebView* webview = reinterpret_cast<WebView*>(nativeView); + return webview->setHwAccelerated(hwAccelerated); +} + /* * JNI registration */ @@ -1254,6 +1272,8 @@ static JNINativeMethod gJavaWebViewMethods[] = { (void*) nativeIsBaseFirst }, { "nativeMapLayerRect", "(IILandroid/graphics/Rect;)V", (void*) nativeMapLayerRect }, + { "nativeSetHwAccelerated", "(IZ)I", + (void*) nativeSetHwAccelerated }, }; int registerWebView(JNIEnv* env) |