Migrate ThumbnailProvider to TaskScheduler

Change how ThumbnailProvider works to remove BrowserThread::FILE
references.  There is a slightly larger refactor surrounding this which
changes the thumbnail flow from:

Request (UI) -> Load (File) -> Decode Helper (File) -> ...
... -> Decode Magic (?) -> Decode Finished (File) -> Scale (File) -> ...
... -> Respond (UI)

to:

Request (UI) -> Load (Pool) -> Decode Helper (UI) -> ...
... -> Decode Magic (?) -> Decode Finished (UI) -> Scale (Pool) -> ...
... -> Respond (UI)

This makes a bit more sense because it uses the trait pool as a pool and
not as a long running task_runner that can have tasks and replies posted
to it.  It also cleans up the logic and flow a bit.

BUG=689520

Change-Id: I18f2600100cddec9d910933d80ef74c5a58502a0
Reviewed-on: https://chromium-review.googlesource.com/581674
Commit-Queue: David Trainor <dtrainor@chromium.org>
Reviewed-by: Tommy Nyquist <nyquist@chromium.org>
Cr-Commit-Position: refs/heads/master@{#489448}
1 file changed