summaryrefslogtreecommitdiff
path: root/chromium/java/com/android/webview
diff options
context:
space:
mode:
authorTorne (Richard Coles) <torne@google.com>2014-11-06 11:12:41 +0000
committerTorne (Richard Coles) <torne@google.com>2014-11-06 11:12:41 +0000
commitec9ca7b51cbd22f546c92a86778dfa9a82207f07 (patch)
treef561d94d2f0312c7268fb046622ac016082b5903 /chromium/java/com/android/webview
parent9665d9d05901196bbcf6f0de9dff5c2bc3d99750 (diff)
parent81fb32c83e2964edaae128bf752c03c4bef8cd26 (diff)
downloadwebview-ec9ca7b51cbd22f546c92a86778dfa9a82207f07.tar.gz
Merge master-chromium into master at db3f05efe0f9
This commit was generated by merge_to_master.py. Change-Id: I7c0ed48fc7a60918a5a04e64b179104983f75964
Diffstat (limited to 'chromium/java/com/android/webview')
-rw-r--r--chromium/java/com/android/webview/chromium/DrawGLFunctor.java9
-rw-r--r--chromium/java/com/android/webview/chromium/WebViewChromium.java3
-rw-r--r--chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java10
3 files changed, 17 insertions, 5 deletions
diff --git a/chromium/java/com/android/webview/chromium/DrawGLFunctor.java b/chromium/java/com/android/webview/chromium/DrawGLFunctor.java
index 7f7adeb..265bfd0 100644
--- a/chromium/java/com/android/webview/chromium/DrawGLFunctor.java
+++ b/chromium/java/com/android/webview/chromium/DrawGLFunctor.java
@@ -58,6 +58,11 @@ class DrawGLFunctor {
if (mDestroyRunnable.mNativeDrawGLFunctor == 0) {
throw new RuntimeException("requested DrawGL on already destroyed DrawGLFunctor");
}
+
+ if (canvas != null && waitForCompletion) {
+ throw new IllegalArgumentException("requested a blocking DrawGL with a not null canvas.");
+ }
+
if (viewRootImpl == null) {
// Can happen during teardown when window is leaked.
return false;
@@ -70,10 +75,6 @@ class DrawGLFunctor {
}
canvas.callDrawGLFunction(mDestroyRunnable.mNativeDrawGLFunctor);
- if (waitForCompletion) {
- viewRootImpl.invokeFunctor(mDestroyRunnable.mNativeDrawGLFunctor,
- waitForCompletion);
- }
return true;
}
diff --git a/chromium/java/com/android/webview/chromium/WebViewChromium.java b/chromium/java/com/android/webview/chromium/WebViewChromium.java
index 34a6660..0201aeb 100644
--- a/chromium/java/com/android/webview/chromium/WebViewChromium.java
+++ b/chromium/java/com/android/webview/chromium/WebViewChromium.java
@@ -58,6 +58,7 @@ import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
+import android.webkit.WebViewFactory;
import android.webkit.WebViewProvider;
import android.webkit.WebChromeClient.CustomViewCallback;
import android.widget.TextView;
@@ -165,6 +166,8 @@ class WebViewChromium implements WebViewProvider,
mAppTargetSdkVersion = mWebView.getContext().getApplicationInfo().targetSdkVersion;
mFactory = factory;
mRunQueue = new WebViewChromiumRunQueue();
+ String webViewAssetPath = WebViewFactory.getLoadedPackageInfo().applicationInfo.sourceDir;
+ mWebView.getContext().getAssets().addAssetPath(webViewAssetPath);
}
static void completeWindowCreation(WebView parent, WebView child) {
diff --git a/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java b/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
index 1b10971..9f9c3aa 100644
--- a/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
+++ b/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
@@ -16,6 +16,7 @@
package com.android.webview.chromium;
+import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.app.ActivityManager;
@@ -122,6 +123,13 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider {
Trace.traceBegin(Trace.TRACE_TAG_WEBVIEW, "AwBrowserProcess.loadLibrary()");
AwBrowserProcess.loadLibrary();
Trace.traceEnd(Trace.TRACE_TAG_WEBVIEW);
+
+ final PackageInfo packageInfo = WebViewFactory.getLoadedPackageInfo();
+
+ // Register the handler that will append the WebView version to logcat in case of a crash.
+ AwContentsStatics.registerCrashHandler(
+ "Version " + packageInfo.versionName + " (code " + packageInfo.versionCode + ")");
+
// Load glue-layer support library.
System.loadLibrary("webviewchromium_plat_support");
@@ -129,7 +137,7 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider {
mWebViewPrefs = ActivityThread.currentApplication().getSharedPreferences(
CHROMIUM_PREFS_NAME, Context.MODE_PRIVATE);
int lastVersion = mWebViewPrefs.getInt(VERSION_CODE_PREF, 0);
- int currentVersion = WebViewFactory.getLoadedPackageInfo().versionCode;
+ int currentVersion = packageInfo.versionCode;
if (lastVersion > currentVersion) {
// The WebView package has been downgraded since we last ran in this application.
// Delete the WebView data directory's contents.