| Index: chrome/browser/browsing_data/browsing_data_remover.cc
|
| diff --git a/chrome/browser/browsing_data/browsing_data_remover.cc b/chrome/browser/browsing_data/browsing_data_remover.cc
|
| index 12f3277708054a61f69dc3a4e5c6aa0a12d2e2d4..8479c3e4bf9290d77ad742cc24f7915a2dd33b80 100644
|
| --- a/chrome/browser/browsing_data/browsing_data_remover.cc
|
| +++ b/chrome/browser/browsing_data/browsing_data_remover.cc
|
| @@ -71,6 +71,7 @@
|
| #include "url/origin.h"
|
|
|
| #if defined(OS_ANDROID)
|
| +#include "chrome/browser/android/webapps/webapp_registry.h"
|
| #include "chrome/browser/precache/precache_manager_factory.h"
|
| #include "components/precache/content/precache_manager.h"
|
| #endif
|
| @@ -760,6 +761,18 @@ void BrowsingDataRemover::RemoveImpl(int remove_mask,
|
| }
|
| }
|
|
|
| +#if defined(OS_ANDROID)
|
| + if (remove_mask & REMOVE_WEBAPP_DATA) {
|
| + waiting_for_clear_webapp_data_ = true;
|
| + BrowserThread::PostTask(
|
| + BrowserThread::IO,
|
| + FROM_HERE,
|
| + base::Bind(&WebappRegistry::UnregisterWebappsOnIOThread,
|
| + base::Bind(&BrowsingDataRemover::OnClearedWebappData,
|
| + base::Unretained(this))));
|
| + }
|
| +#endif
|
| +
|
| // Record the combined deletion of cookies and cache.
|
| CookieOrCacheDeletionChoice choice = NEITHER_COOKIES_NOR_CACHE;
|
| if (remove_mask & REMOVE_COOKIES &&
|
| @@ -840,6 +853,7 @@ bool BrowsingDataRemover::AllDone() {
|
| !waiting_for_clear_pnacl_cache_ &&
|
| #if defined(OS_ANDROID)
|
| !waiting_for_clear_precache_history_ &&
|
| + !waiting_for_clear_webapp_data_ &&
|
| #endif
|
| #if defined(ENABLE_WEBRTC)
|
| !waiting_for_clear_webrtc_logs_ &&
|
| @@ -1132,6 +1146,12 @@ void BrowsingDataRemover::OnClearedPrecacheHistory() {
|
| waiting_for_clear_precache_history_ = false;
|
| NotifyAndDeleteIfDone();
|
| }
|
| +
|
| +void BrowsingDataRemover::OnClearedWebappData() {
|
| + DCHECK_CURRENTLY_ON(BrowserThread::UI);
|
| + waiting_for_clear_webapp_data_ = false;
|
| + NotifyAndDeleteIfDone();
|
| +}
|
| #endif
|
|
|
| void BrowsingDataRemover::OnClearedDomainReliabilityMonitor() {
|
|
|