Commit 13efe5ac authored by sievers's avatar sievers Committed by Commit bot

Revert of android: Use hw acceleration in android_webview_shell (patchset #9...

Revert of android: Use hw acceleration in android_webview_shell (patchset #9 id:160001 of https://codereview.chromium.org/414503004/)

Reason for revert:
clang

Original issue's description:
> android: Use hw acceleration in android_webview_shell
>
> This creates a (GL)SurfaceView overlay on top of the shell
> container view which runs its own thread for rendering.
> It calls into the native draw functor through a small
> dynamic library (drawgl.so).
>
> NOTRY=True
>
> Committed: https://chromium.googlesource.com/chromium/src/+/09acbf59e7e8f1de574498ee5ba8eae0b0775438

TBR=boliu@chromium.org,mkosiba@chromium.org,hush@chromium.org
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/524933002

Cr-Commit-Position: refs/heads/master@{#292728}
parent 174373bc
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
'libwebviewchromium', 'libwebviewchromium',
'android_webview_java', 'android_webview_java',
'android_webview_pak', 'android_webview_pak',
'libdrawgl',
], ],
'variables': { 'variables': {
'apk_name': 'AndroidWebView', 'apk_name': 'AndroidWebView',
...@@ -18,7 +17,6 @@ ...@@ -18,7 +17,6 @@
'native_lib_target': 'libstandalonelibwebviewchromium', 'native_lib_target': 'libstandalonelibwebviewchromium',
'resource_dir': 'test/shell/res', 'resource_dir': 'test/shell/res',
'extensions_to_not_compress': 'pak', 'extensions_to_not_compress': 'pak',
'additional_bundled_libs': '<(SHARED_LIB_DIR)/libdrawgl.so',
'additional_input_paths': [ 'additional_input_paths': [
'<(PRODUCT_DIR)/android_webview_apk/assets/webviewchromium.pak', '<(PRODUCT_DIR)/android_webview_apk/assets/webviewchromium.pak',
'<(PRODUCT_DIR)/android_webview_apk/assets/en-US.pak', '<(PRODUCT_DIR)/android_webview_apk/assets/en-US.pak',
...@@ -164,17 +162,5 @@ ...@@ -164,17 +162,5 @@
], ],
'includes': [ '../build/apk_test.gypi' ], 'includes': [ '../build/apk_test.gypi' ],
}, },
{
'target_name': 'libdrawgl',
'type': 'shared_library',
# Do not depend on any other component here, since this target
# builds a separate shared library!
'include_dirs': [
'..',
],
'sources': [
'../android_webview/test/shell/src/draw_gl/draw_gl.cc',
],
},
], ],
} }
...@@ -65,7 +65,7 @@ public class AndroidScrollIntegrationTest extends AwTestBase { ...@@ -65,7 +65,7 @@ public class AndroidScrollIntegrationTest extends AwTestBase {
new OverScrollByCallbackHelper(); new OverScrollByCallbackHelper();
public ScrollTestContainerView(Context context) { public ScrollTestContainerView(Context context) {
super(context, false); super(context);
} }
public CallbackHelper getOnScrollToCallbackHelper() { public CallbackHelper getOnScrollToCallbackHelper() {
......
...@@ -274,7 +274,7 @@ public class AwTestBase ...@@ -274,7 +274,7 @@ public class AwTestBase
*/ */
public static class TestDependencyFactory extends AwContents.DependencyFactory { public static class TestDependencyFactory extends AwContents.DependencyFactory {
public AwTestContainerView createAwTestContainerView(AwTestRunnerActivity activity) { public AwTestContainerView createAwTestContainerView(AwTestRunnerActivity activity) {
return new AwTestContainerView(activity, false); return new AwTestContainerView(activity);
} }
public AwSettings createAwSettings(Context context, boolean supportsLegacyQuirks) { public AwSettings createAwSettings(Context context, boolean supportsLegacyQuirks) {
return new AwSettings(context, false, supportsLegacyQuirks); return new AwSettings(context, false, supportsLegacyQuirks);
......
...@@ -10,19 +10,17 @@ ...@@ -10,19 +10,17 @@
package="org.chromium.android_webview.shell"> package="org.chromium.android_webview.shell">
<application android:name="org.chromium.android_webview.shell.AwShellApplication" <application android:name="org.chromium.android_webview.shell.AwShellApplication"
android:label="AwShellApplication"> android:label="AwShellApplication" android:hardwareAccelerated="false">
<activity android:name="org.chromium.android_webview.shell.AwShellActivity" <activity android:name="org.chromium.android_webview.shell.AwShellActivity"
android:label="Android WebView Test Shell" android:label="Android WebView Test Shell"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize" android:configChanges="orientation|keyboardHidden|keyboard|screenSize">
android:hardwareAccelerated="true">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter> </intent-filter>
</activity> </activity>
<activity android:name="org.chromium.android_webview.test.AwTestRunnerActivity" <activity android:name="org.chromium.android_webview.test.AwTestRunnerActivity"
android:label="AwTestRunnerActivity" android:label="AwTestRunnerActivity">
android:hardwareAccelerated="false">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.FRAMEWORK_INSTRUMENTATION_TEST" /> <category android:name="android.intent.category.FRAMEWORK_INSTRUMENTATION_TEST" />
......
include_rules = [
# draw_gl compiles its own shared library for a single entry point
# for testing. Therefore it cannot depend on any other module,
# except for shared definitions.
"-android_webview",
"+android_webview/public/browser",
]
// Copyright (c) 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include <jni.h>
#include "android_webview/public/browser/draw_gl.h"
extern "C" {
JNIEXPORT jint JNI_OnLoad(JavaVM* vm, void* reserved) {
return JNI_VERSION_1_4;
}
// This code goes into its own dynamic library, so we cannot depend on
// any other components like base.
JNIEXPORT void JNICALL
Java_org_chromium_android_1webview_shell_DrawGL_nativeDrawGL(
JNIEnv*,
jclass,
jlong draw_gl,
jlong view,
jint width,
jint height,
jint scroll_x,
jint scroll_y,
jint mode) {
AwDrawGLInfo draw_info;
draw_info.mode = static_cast<AwDrawGLInfo::Mode>(mode);
draw_info.version = kAwDrawGLInfoVersion;
draw_info.is_layer = false;
draw_info.width = width;
draw_info.height = height;
draw_info.clip_left = 0;
draw_info.clip_top = 0;
draw_info.clip_bottom = height;
draw_info.clip_right = width;
draw_info.transform[0] = 1.0;
draw_info.transform[1] = 0.0;
draw_info.transform[2] = 0.0;
draw_info.transform[3] = 0.0;
draw_info.transform[4] = 0.0;
draw_info.transform[5] = 1.0;
draw_info.transform[6] = 0.0;
draw_info.transform[7] = 0.0;
draw_info.transform[8] = 0.0;
draw_info.transform[9] = 0.0;
draw_info.transform[10] = 1.0;
draw_info.transform[11] = 0.0;
draw_info.transform[12] = -scroll_x;
draw_info.transform[13] = -scroll_y;
draw_info.transform[14] = 0.0;
draw_info.transform[15] = 1.0;
AwDrawGLFunction* draw_func = reinterpret_cast<AwDrawGLFunction*>(draw_gl);
draw_func(view, &draw_info, 0);
}
}
...@@ -80,7 +80,7 @@ public class AwShellActivity extends Activity { ...@@ -80,7 +80,7 @@ public class AwShellActivity extends Activity {
private AwTestContainerView createAwTestContainerView() { private AwTestContainerView createAwTestContainerView() {
AwBrowserProcess.start(this); AwBrowserProcess.start(this);
AwTestContainerView testContainerView = new AwTestContainerView(this, true); AwTestContainerView testContainerView = new AwTestContainerView(this);
AwContentsClient awContentsClient = new NullContentsClient() { AwContentsClient awContentsClient = new NullContentsClient() {
private View mCustomView; private View mCustomView;
......
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.android_webview.shell;
/**
* Provides an entry point to the native draw functor.
*/
public class DrawGL {
public static void drawGL(long drawGL, long viewContext, int width, int height,
int scrollX, int scrollY, int mode) {
nativeDrawGL(drawGL, viewContext, width, height, scrollX, scrollY, mode);
}
private static native void nativeDrawGL(long drawGL, long viewContext,
int width, int height, int scrollX, int scrollY, int mode);
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment