summaryrefslogtreecommitdiffstats
path: root/tests/DumpRenderTree2
diff options
context:
space:
mode:
authorJonathan Dixon <joth@google.com>2012-02-28 18:45:06 +0000
committerJonathan Dixon <joth@google.com>2012-03-02 11:17:47 +0000
commit3c90952036a5ff7ddb2946c643f1a0bf1c31d53a (patch)
tree974ef2a94c60a2c72b8fbd804613792480a9c3e5 /tests/DumpRenderTree2
parent0dc0da67d9775b2364a38d015e0610492708a02e (diff)
downloadframeworks_base-3c90952036a5ff7ddb2946c643f1a0bf1c31d53a.zip
frameworks_base-3c90952036a5ff7ddb2946c643f1a0bf1c31d53a.tar.gz
frameworks_base-3c90952036a5ff7ddb2946c643f1a0bf1c31d53a.tar.bz2
Refactor WebView to be a thin proxy class
Splits interface and implementation; all client calls are forwarded to an abstract WebViewProvider interface, and the existing implementation moved into the WebViewClassic implementor of this interface. Originally taken from a snapshot from the development branch, by: git diff HEAD 9a4c328a54cc05e5 | git apply - but then rebased to keep up to date with master Interdepends on webkit and Browser changes: https://android-git.corp.google.com/g/158979 https://android-git.corp.google.com/g/167911 Change-Id: I91403f32654ff308934e95c832d17b292a7d9b2e
Diffstat (limited to 'tests/DumpRenderTree2')
-rw-r--r--tests/DumpRenderTree2/src/com/android/dumprendertree2/LayoutTestsExecutor.java24
-rw-r--r--tests/DumpRenderTree2/src/com/android/dumprendertree2/TextResult.java3
2 files changed, 17 insertions, 10 deletions
diff --git a/tests/DumpRenderTree2/src/com/android/dumprendertree2/LayoutTestsExecutor.java b/tests/DumpRenderTree2/src/com/android/dumprendertree2/LayoutTestsExecutor.java
index f59da37..fc22472 100644
--- a/tests/DumpRenderTree2/src/com/android/dumprendertree2/LayoutTestsExecutor.java
+++ b/tests/DumpRenderTree2/src/com/android/dumprendertree2/LayoutTestsExecutor.java
@@ -41,9 +41,11 @@ import android.webkit.JsResult;
import android.webkit.SslErrorHandler;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
+import android.webkit.WebSettingsClassic;
import android.webkit.WebStorage;
import android.webkit.WebStorage.QuotaUpdater;
import android.webkit.WebView;
+import android.webkit.WebViewClassic;
import android.webkit.WebViewClient;
import java.lang.Thread.UncaughtExceptionHandler;
@@ -369,11 +371,12 @@ public class LayoutTestsExecutor extends Activity {
* a real use of touch events in a WebView) and so if the WebView drops the event,
* the test will fail as the test expects one callback for every touch it synthesizes.
*/
- webView.setTouchInterval(-1);
+ WebViewClassic webViewClassic = WebViewClassic.fromWebView(webView);
+ webViewClassic.setTouchInterval(-1);
- webView.clearCache(true);
+ webViewClassic.clearCache(true);
- WebSettings webViewSettings = webView.getSettings();
+ WebSettingsClassic webViewSettings = webViewClassic.getSettings();
webViewSettings.setAppCacheEnabled(true);
webViewSettings.setAppCachePath(getApplicationContext().getCacheDir().getPath());
// Use of larger values causes unexplained AppCache database corruption.
@@ -391,7 +394,7 @@ public class LayoutTestsExecutor extends Activity {
webViewSettings.setPageCacheCapacity(0);
// This is asynchronous, but it gets processed by WebCore before it starts loading pages.
- mCurrentWebView.useMockDeviceOrientation();
+ WebViewClassic.fromWebView(mCurrentWebView).useMockDeviceOrientation();
// Must do this after setting the AppCache path.
WebStorage.getInstance().deleteAllData();
@@ -625,10 +628,12 @@ public class LayoutTestsExecutor extends Activity {
String key = msg.getData().getString("key");
boolean value = msg.getData().getBoolean("value");
if (WEBKIT_OFFLINE_WEB_APPLICATION_CACHE_ENABLED.equals(key)) {
- mCurrentWebView.getSettings().setAppCacheEnabled(value);
+ WebViewClassic.fromWebView(mCurrentWebView).getSettings().
+ setAppCacheEnabled(value);
} else if (WEBKIT_USES_PAGE_CACHE_PREFERENCE_KEY.equals(key)) {
// Cache the maximum possible number of pages.
- mCurrentWebView.getSettings().setPageCacheCapacity(Integer.MAX_VALUE);
+ WebViewClassic.fromWebView(mCurrentWebView).getSettings().
+ setPageCacheCapacity(Integer.MAX_VALUE);
} else {
Log.w(LOG_TAG, "LayoutTestController.overridePreference(): " +
"Unsupported preference '" + key + "'");
@@ -656,7 +661,8 @@ public class LayoutTestsExecutor extends Activity {
break;
case MSG_SET_XSS_AUDITOR_ENABLED:
- mCurrentWebView.getSettings().setXSSAuditorEnabled(msg.arg1 == 1);
+ WebViewClassic.fromWebView(mCurrentWebView).getSettings().
+ setXSSAuditorEnabled(msg.arg1 == 1);
break;
case MSG_WAIT_UNTIL_DONE:
@@ -728,8 +734,8 @@ public class LayoutTestsExecutor extends Activity {
Log.i(LOG_TAG, mCurrentTestRelativePath + ": setMockDeviceOrientation(" + canProvideAlpha +
", " + alpha + ", " + canProvideBeta + ", " + beta + ", " + canProvideGamma +
", " + gamma + ")");
- mCurrentWebView.setMockDeviceOrientation(canProvideAlpha, alpha, canProvideBeta, beta,
- canProvideGamma, gamma);
+ WebViewClassic.fromWebView(mCurrentWebView).setMockDeviceOrientation(canProvideAlpha,
+ alpha, canProvideBeta, beta, canProvideGamma, gamma);
}
public void setXSSAuditorEnabled(boolean flag) {
diff --git a/tests/DumpRenderTree2/src/com/android/dumprendertree2/TextResult.java b/tests/DumpRenderTree2/src/com/android/dumprendertree2/TextResult.java
index 3d2b98b..fd1c0ad 100644
--- a/tests/DumpRenderTree2/src/com/android/dumprendertree2/TextResult.java
+++ b/tests/DumpRenderTree2/src/com/android/dumprendertree2/TextResult.java
@@ -20,6 +20,7 @@ import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.webkit.WebView;
+import android.webkit.WebViewClassic;
import name.fraser.neil.plaintext.diff_match_patch;
@@ -233,7 +234,7 @@ public class TextResult extends AbstractResult {
*/
msg.arg1 = 1;
msg.arg2 = mDumpChildFramesAsText ? 1 : 0;
- webview.documentAsText(msg);
+ WebViewClassic.fromWebView(webview).documentAsText(msg);
}
@Override