Commit d0af18c4 authored by Karolina Soltys's avatar Karolina Soltys Committed by Commit Bot

DownloadDirectoryProvider: getUiThreadHandler -> PostTask

Part of an ongoing effort of ThreadUtils --> PostTask migration.

Bug: 863341
Change-Id: I2feb4d7dc6280da16d25e91f75f8b10266bb3fcf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1448219Reviewed-by: default avatarAndrew Grieve <agrieve@chromium.org>
Commit-Queue: Andrew Grieve <agrieve@chromium.org>
Auto-Submit: Karolina Soltys <ksolt@chromium.org>
Cr-Commit-Position: refs/heads/master@{#638235}
parent d9377f2a
...@@ -10,15 +10,15 @@ import android.content.Intent; ...@@ -10,15 +10,15 @@ import android.content.Intent;
import android.content.IntentFilter; import android.content.IntentFilter;
import android.os.Build; import android.os.Build;
import android.os.Environment; import android.os.Environment;
import android.os.Handler;
import org.chromium.base.Callback; import org.chromium.base.Callback;
import org.chromium.base.ContextUtils; import org.chromium.base.ContextUtils;
import org.chromium.base.PathUtils; import org.chromium.base.PathUtils;
import org.chromium.base.ThreadUtils;
import org.chromium.base.metrics.RecordHistogram; import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.task.AsyncTask; import org.chromium.base.task.AsyncTask;
import org.chromium.base.task.PostTask;
import org.chromium.chrome.browser.download.DirectoryOption.DownloadLocationDirectoryType; import org.chromium.chrome.browser.download.DirectoryOption.DownloadLocationDirectoryType;
import org.chromium.content_public.browser.UiThreadTaskTraits;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -161,9 +161,6 @@ public class DownloadDirectoryProvider { ...@@ -161,9 +161,6 @@ public class DownloadDirectoryProvider {
private String mExternalStorageDirectory; private String mExternalStorageDirectory;
private ArrayList < Callback < ArrayList<DirectoryOption>>> mCallbacks = new ArrayList<>(); private ArrayList < Callback < ArrayList<DirectoryOption>>> mCallbacks = new ArrayList<>();
// Should be bounded to UI thread.
protected final Handler mHandler = new Handler(ThreadUtils.getUiThreadLooper());
protected DownloadDirectoryProvider() { protected DownloadDirectoryProvider() {
registerSDCardReceiver(); registerSDCardReceiver();
} }
...@@ -175,7 +172,8 @@ public class DownloadDirectoryProvider { ...@@ -175,7 +172,8 @@ public class DownloadDirectoryProvider {
public void getAllDirectoriesOptions(Callback<ArrayList<DirectoryOption>> callback) { public void getAllDirectoriesOptions(Callback<ArrayList<DirectoryOption>> callback) {
// Use cache value. // Use cache value.
if (!mNeedsUpdate && mDirectoriesReady) { if (!mNeedsUpdate && mDirectoriesReady) {
mHandler.post(() -> callback.onResult(mDirectoryOptions)); PostTask.postTask(
UiThreadTaskTraits.DEFAULT, () -> callback.onResult(mDirectoryOptions));
return; return;
} }
......
...@@ -5,6 +5,8 @@ ...@@ -5,6 +5,8 @@
package org.chromium.chrome.browser.download; package org.chromium.chrome.browser.download;
import org.chromium.base.Callback; import org.chromium.base.Callback;
import org.chromium.base.task.PostTask;
import org.chromium.content_public.browser.UiThreadTaskTraits;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -22,6 +24,6 @@ public class TestDownloadDirectoryProvider extends DownloadDirectoryProvider { ...@@ -22,6 +24,6 @@ public class TestDownloadDirectoryProvider extends DownloadDirectoryProvider {
// DownloadDirectoryProvider implementation. // DownloadDirectoryProvider implementation.
@Override @Override
public void getAllDirectoriesOptions(Callback<ArrayList<DirectoryOption>> callback) { public void getAllDirectoriesOptions(Callback<ArrayList<DirectoryOption>> callback) {
mHandler.post(() -> callback.onResult(mDirectoryOptions)); PostTask.postTask(UiThreadTaskTraits.DEFAULT, () -> callback.onResult(mDirectoryOptions));
} }
} }
\ No newline at end of file
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