Chromium Code Reviews| Index: chrome/browser/android/offline_pages/prerendering_offliner.cc |
| diff --git a/chrome/browser/android/offline_pages/prerendering_offliner.cc b/chrome/browser/android/offline_pages/prerendering_offliner.cc |
| index 31c0813bdb86721bd1922114781bf64ee9d8547a..91ed919f1a3aa0a1acdc54ef4075a0d2a91c48d3 100644 |
| --- a/chrome/browser/android/offline_pages/prerendering_offliner.cc |
| +++ b/chrome/browser/android/offline_pages/prerendering_offliner.cc |
| @@ -191,13 +191,16 @@ bool PrerenderingOffliner::LoadAndSave(const SavePageRequest& request, |
| return accepted; |
| } |
| -void PrerenderingOffliner::Cancel() { |
| +void PrerenderingOffliner::Cancel(const CancelCallback& callback) { |
| + int64_t request_id = 0L; |
|
fgorski
2017/02/27 18:07:25
0LL?
chili
2017/02/28 00:44:14
Done.
|
| if (pending_request_) { |
| + request_id = pending_request_->request_id(); |
| pending_request_.reset(nullptr); |
| app_listener_.reset(nullptr); |
| GetOrCreateLoader()->StopLoading(); |
| // TODO(dougarnett): Consider ability to cancel SavePage request. |
| } |
| + callback.Run(request_id); |
| } |
| void PrerenderingOffliner::SetLoaderForTesting( |
| @@ -238,10 +241,14 @@ void PrerenderingOffliner::OnApplicationStateChange( |
| base::android::APPLICATION_STATE_HAS_RUNNING_ACTIVITIES) { |
| DVLOG(1) << "App became active, canceling current offlining request"; |
| SavePageRequest* request = pending_request_.get(); |
| - Cancel(); |
| - completion_callback_.Run(*request, |
| - Offliner::RequestStatus::FOREGROUND_CANCELED); |
| + Cancel(base::Bind(&PrerenderingOffliner::HandleApplicationStateChangeCancel, |
|
fgorski
2017/02/27 18:07:25
add the same comment as before please.
chili
2017/02/28 00:44:14
Done.
|
| + weak_ptr_factory_.GetWeakPtr(), *request)); |
| } |
| } |
| +void PrerenderingOffliner::HandleApplicationStateChangeCancel( |
| + const SavePageRequest& request, |
| + int64_t offline_id) { |
| + completion_callback_.Run(request, RequestStatus::FOREGROUND_CANCELED); |
| +} |
| } // namespace offline_pages |