Index: android_webview/java/src/org/chromium/android_webview/AwDataReductionProxyManager.java |
diff --git a/android_webview/java/src/org/chromium/android_webview/AwDataReductionProxyManager.java b/android_webview/java/src/org/chromium/android_webview/AwDataReductionProxyManager.java |
index 85944b98b385d5fa134735b34ceb5df783a21c57..f42b25dfe35f59594ad2922f21aa7a1f9eb0b94c 100644 |
--- a/android_webview/java/src/org/chromium/android_webview/AwDataReductionProxyManager.java |
+++ b/android_webview/java/src/org/chromium/android_webview/AwDataReductionProxyManager.java |
@@ -15,6 +15,7 @@ |
import android.util.Log; |
import org.chromium.base.CommandLine; |
+import org.chromium.base.ThreadUtils; |
import java.lang.reflect.Field; |
@@ -108,21 +109,23 @@ private String readKey() { |
private static void applyDataReductionProxySettingsAsync( |
final Context context, final String key) { |
- AsyncTask<Void, Void, Boolean> task = new AsyncTask<Void, Void, Boolean>() { |
+ AsyncTask.THREAD_POOL_EXECUTOR.execute(new Runnable() { |
@Override |
- protected Boolean doInBackground(Void... params) { |
- return isDataReductionProxyEnabled(context); |
+ public void run() { |
+ final boolean enabled = isDataReductionProxyEnabled(context); |
+ |
+ ThreadUtils.runOnUiThread(new Runnable() { |
+ @Override |
+ public void run() { |
+ if (enabled) { |
+ // Set the data reduction proxy key. |
+ AwContentsStatics.setDataReductionProxyKey(key); |
+ } |
+ AwContentsStatics.setDataReductionProxyEnabled(enabled); |
+ } |
+ }); |
} |
- @Override |
- protected void onPostExecute(Boolean enabled) { |
- if (enabled) { |
- // Set the data reduction proxy key. |
- AwContentsStatics.setDataReductionProxyKey(key); |
- } |
- AwContentsStatics.setDataReductionProxyEnabled(enabled); |
- } |
- }; |
- task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); |
+ }); |
} |
private static boolean isDataReductionProxyEnabled(Context context) { |