OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/browsing_data/browsing_data_remover.h" | 5 #include "chrome/browser/browsing_data/browsing_data_remover.h" |
6 | 6 |
7 #include <map> | 7 #include <map> |
8 #include <set> | 8 #include <set> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 400 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
411 // check the origin_set_mask_ to prevent unintended deletion. | 411 // check the origin_set_mask_ to prevent unintended deletion. |
412 if (remove_mask & REMOVE_PLUGIN_DATA && | 412 if (remove_mask & REMOVE_PLUGIN_DATA && |
413 origin_set_mask_ & BrowsingDataHelper::UNPROTECTED_WEB) { | 413 origin_set_mask_ & BrowsingDataHelper::UNPROTECTED_WEB) { |
414 content::RecordAction(UserMetricsAction("ClearBrowsingData_LSOData")); | 414 content::RecordAction(UserMetricsAction("ClearBrowsingData_LSOData")); |
415 | 415 |
416 waiting_for_clear_plugin_data_ = true; | 416 waiting_for_clear_plugin_data_ = true; |
417 if (!plugin_data_remover_.get()) | 417 if (!plugin_data_remover_.get()) |
418 plugin_data_remover_.reset(content::PluginDataRemover::Create(profile_)); | 418 plugin_data_remover_.reset(content::PluginDataRemover::Create(profile_)); |
419 base::WaitableEvent* event = | 419 base::WaitableEvent* event = |
420 plugin_data_remover_->StartRemoving(delete_begin_); | 420 plugin_data_remover_->StartRemoving(delete_begin_); |
421 watcher_.StartWatching(event, this); | 421 |
| 422 base::WaitableEventWatcher::EventCallback watcher_callback = |
| 423 base::Bind(&BrowsingDataRemover::OnWaitableEventSignaled, |
| 424 base::Unretained(this)); |
| 425 watcher_.StartWatching(event, watcher_callback); |
422 } | 426 } |
423 #endif | 427 #endif |
424 | 428 |
425 if (remove_mask & REMOVE_PASSWORDS) { | 429 if (remove_mask & REMOVE_PASSWORDS) { |
426 content::RecordAction(UserMetricsAction("ClearBrowsingData_Passwords")); | 430 content::RecordAction(UserMetricsAction("ClearBrowsingData_Passwords")); |
427 PasswordStore* password_store = PasswordStoreFactory::GetForProfile( | 431 PasswordStore* password_store = PasswordStoreFactory::GetForProfile( |
428 profile_, Profile::EXPLICIT_ACCESS); | 432 profile_, Profile::EXPLICIT_ACCESS); |
429 | 433 |
430 if (password_store) | 434 if (password_store) |
431 password_store->RemoveLoginsCreatedBetween(delete_begin_, delete_end_); | 435 password_store->RemoveLoginsCreatedBetween(delete_begin_, delete_end_); |
(...skipping 584 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1016 BrowserThread::UI, FROM_HERE, | 1020 BrowserThread::UI, FROM_HERE, |
1017 base::Bind(&BrowsingDataRemover::OnClearedFormData, | 1021 base::Bind(&BrowsingDataRemover::OnClearedFormData, |
1018 base::Unretained(this))); | 1022 base::Unretained(this))); |
1019 } | 1023 } |
1020 | 1024 |
1021 void BrowsingDataRemover::OnClearedFormData() { | 1025 void BrowsingDataRemover::OnClearedFormData() { |
1022 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 1026 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
1023 waiting_for_clear_form_ = false; | 1027 waiting_for_clear_form_ = false; |
1024 NotifyAndDeleteIfDone(); | 1028 NotifyAndDeleteIfDone(); |
1025 } | 1029 } |
OLD | NEW |