diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromium.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromium.java index ca6aacb7e402dc..28eba7c5c4f449 100644 --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromium.java +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromium.java @@ -62,6 +62,7 @@ import org.chromium.android_webview.AwContentsStatics; import org.chromium.android_webview.AwPrintDocumentAdapter; import org.chromium.android_webview.AwSettings; +import org.chromium.android_webview.AwThreadUtils; import org.chromium.android_webview.gfx.AwDrawFnImpl; import org.chromium.android_webview.renderer_priority.RendererPriority; import org.chromium.base.BuildInfo; @@ -441,12 +442,7 @@ protected boolean checkNeedsPost() { private void checkThread() { if (!ThreadUtils.runningOnUiThread()) { final RuntimeException threadViolation = createThreadException(); - PostTask.postTask(UiThreadTaskTraits.DEFAULT, new Runnable() { - @Override - public void run() { - throw threadViolation; - } - }); + AwThreadUtils.postToUiThreadLooper(() -> { throw threadViolation; }); throw createThreadException(); } } diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java index 5763a6e9834685..eddedc3fc5ff69 100644 --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java @@ -27,6 +27,7 @@ import org.chromium.android_webview.AwNetworkChangeNotifierRegistrationPolicy; import org.chromium.android_webview.AwProxyController; import org.chromium.android_webview.AwServiceWorkerController; +import org.chromium.android_webview.AwThreadUtils; import org.chromium.android_webview.AwTracingController; import org.chromium.android_webview.HttpAuthDatabase; import org.chromium.android_webview.ProductConfig; @@ -283,7 +284,7 @@ void startYourEngines(boolean onMainThread) { // We must post to the UI thread to cover the case that the user has invoked Chromium // startup by using the (thread-safe) CookieManager rather than creating a WebView. - PostTask.postTask(UiThreadTaskTraits.DEFAULT, new Runnable() { + AwThreadUtils.postToUiThreadLooper(new Runnable() { @Override public void run() { synchronized (mLock) { diff --git a/android_webview/java/src/org/chromium/android_webview/AwContents.java b/android_webview/java/src/org/chromium/android_webview/AwContents.java index 9e1d09d2388585..3dd90513c79c21 100644 --- a/android_webview/java/src/org/chromium/android_webview/AwContents.java +++ b/android_webview/java/src/org/chromium/android_webview/AwContents.java @@ -3275,7 +3275,7 @@ private long onCreateTouchHandle() { @CalledByNative private static void generateMHTMLCallback(String path, long size, Callback callback) { if (callback == null) return; - callback.onResult(size < 0 ? null : path); + AwThreadUtils.postToUiThreadLooper(() -> { callback.onResult(size < 0 ? null : path); }); } @CalledByNative @@ -3358,7 +3358,7 @@ public void invokeVisualStateCallback( if (isDestroyed(NO_WARN)) return; // Posting avoids invoking the callback inside invoking_composite_ // (see synchronous_compositor_impl.cc and crbug/452530). - PostTask.postTask(UiThreadTaskTraits.DEFAULT, () -> callback.onComplete(requestId)); + AwThreadUtils.postToUiThreadLooper(() -> callback.onComplete(requestId)); } // Called as a result of AwContentsJni.get().updateLastHitTestData. @@ -3544,7 +3544,7 @@ private void saveWebArchiveInternal(String path, final Callback callback if (path == null || isDestroyed(WARN)) { if (callback == null) return; - PostTask.runOrPostTask(UiThreadTaskTraits.DEFAULT, callback.bind(null)); + AwThreadUtils.postToUiThreadLooper(callback.bind(null)); } else { AwContentsJni.get().generateMHTML(mNativeAwContents, AwContents.this, path, callback); } diff --git a/android_webview/java/src/org/chromium/android_webview/AwGeolocationPermissions.java b/android_webview/java/src/org/chromium/android_webview/AwGeolocationPermissions.java index 55d617ca3e86b6..86facf508cde3c 100644 --- a/android_webview/java/src/org/chromium/android_webview/AwGeolocationPermissions.java +++ b/android_webview/java/src/org/chromium/android_webview/AwGeolocationPermissions.java @@ -6,8 +6,6 @@ import android.content.SharedPreferences; -import org.chromium.base.task.PostTask; -import org.chromium.content_public.browser.UiThreadTaskTraits; import org.chromium.net.GURLUtils; import java.util.HashSet; @@ -101,7 +99,7 @@ public boolean hasOrigin(String origin) { */ public void getAllowed(String origin, final org.chromium.base.Callback callback) { final boolean finalAllowed = isOriginAllowed(origin); - PostTask.postTask(UiThreadTaskTraits.DEFAULT, callback.bind(finalAllowed)); + AwThreadUtils.postToUiThreadLooper(callback.bind(finalAllowed)); } /** @@ -114,7 +112,7 @@ public void getOrigins(final org.chromium.base.Callback> callback) { origins.add(name.substring(PREF_PREFIX.length())); } } - PostTask.postTask(UiThreadTaskTraits.DEFAULT, callback.bind(origins)); + AwThreadUtils.postToUiThreadLooper(callback.bind(origins)); } /**