Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Side by Side Diff: ios/chrome/browser/signin/browser_state_data_remover.mm

Issue 2848673003: [ObjC ARC] Converts ios/chrome/browser/signin:signin to ARC. (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #import "ios/chrome/browser/signin/browser_state_data_remover.h" 5 #import "ios/chrome/browser/signin/browser_state_data_remover.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/threading/thread_task_runner_handle.h" 8 #include "base/threading/thread_task_runner_handle.h"
9 #include "components/prefs/pref_service.h" 9 #include "components/prefs/pref_service.h"
10 #include "components/signin/core/common/signin_pref_names.h" 10 #include "components/signin/core/common/signin_pref_names.h"
11 #include "ios/chrome/browser/bookmarks/bookmarks_utils.h" 11 #include "ios/chrome/browser/bookmarks/bookmarks_utils.h"
12 #include "ios/chrome/browser/browser_state/chrome_browser_state.h" 12 #include "ios/chrome/browser/browser_state/chrome_browser_state.h"
13 #include "ios/chrome/browser/reading_list/reading_list_remover_helper.h" 13 #include "ios/chrome/browser/reading_list/reading_list_remover_helper.h"
14 #import "ios/chrome/browser/ui/commands/UIKit+ChromeExecuteCommand.h" 14 #import "ios/chrome/browser/ui/commands/UIKit+ChromeExecuteCommand.h"
15 #import "ios/chrome/browser/ui/commands/clear_browsing_data_command.h" 15 #import "ios/chrome/browser/ui/commands/clear_browsing_data_command.h"
16 16
17 #if !defined(__has_feature) || !__has_feature(objc_arc)
18 #error "This file requires ARC support."
19 #endif
20
17 namespace { 21 namespace {
18 const int kRemoveAllDataMask = ~0; 22 const int kRemoveAllDataMask = ~0;
19 } 23 }
20 24
21 BrowserStateDataRemover::BrowserStateDataRemover( 25 BrowserStateDataRemover::BrowserStateDataRemover(
22 ios::ChromeBrowserState* browser_state) 26 ios::ChromeBrowserState* browser_state)
23 : browser_state_(browser_state), forget_last_username_(false) { 27 : browser_state_(browser_state), forget_last_username_(false) {
24 callback_subscription_ = 28 callback_subscription_ =
25 IOSChromeBrowsingDataRemover::RegisterOnBrowsingDataRemovedCallback( 29 IOSChromeBrowsingDataRemover::RegisterOnBrowsingDataRemovedCallback(
26 base::Bind(&BrowserStateDataRemover::NotifyWithDetails, 30 base::Bind(&BrowserStateDataRemover::NotifyWithDetails,
(...skipping 15 matching lines...) Expand all
42 } 46 }
43 47
44 void BrowserStateDataRemover::SetForgetLastUsername() { 48 void BrowserStateDataRemover::SetForgetLastUsername() {
45 forget_last_username_ = true; 49 forget_last_username_ = true;
46 } 50 }
47 51
48 void BrowserStateDataRemover::RemoveBrowserStateData(ProceduralBlock callback) { 52 void BrowserStateDataRemover::RemoveBrowserStateData(ProceduralBlock callback) {
49 DCHECK(!callback_); 53 DCHECK(!callback_);
50 callback_.reset([callback copy]); 54 callback_.reset([callback copy]);
51 55
52 base::scoped_nsobject<ClearBrowsingDataCommand> command( 56 ClearBrowsingDataCommand* command = [[ClearBrowsingDataCommand alloc]
53 [[ClearBrowsingDataCommand alloc] 57 initWithBrowserState:browser_state_
54 initWithBrowserState:browser_state_ 58 mask:kRemoveAllDataMask
55 mask:kRemoveAllDataMask 59 timePeriod:browsing_data::TimePeriod::ALL_TIME];
56 timePeriod:browsing_data::TimePeriod::ALL_TIME]);
57 60
58 UIWindow* mainWindow = [[UIApplication sharedApplication] keyWindow]; 61 UIWindow* mainWindow = [[UIApplication sharedApplication] keyWindow];
59 DCHECK(mainWindow); 62 DCHECK(mainWindow);
60 [mainWindow chromeExecuteCommand:command]; 63 [mainWindow chromeExecuteCommand:command];
61 } 64 }
62 65
63 void BrowserStateDataRemover::NotifyWithDetails( 66 void BrowserStateDataRemover::NotifyWithDetails(
64 const IOSChromeBrowsingDataRemover::NotificationDetails& details) { 67 const IOSChromeBrowsingDataRemover::NotificationDetails& details) {
65 // Remove bookmarks and Reading List entriesonce all browsing data was 68 // Remove bookmarks and Reading List entriesonce all browsing data was
66 // removed. 69 // removed.
(...skipping 23 matching lines...) Expand all
90 if (forget_last_username_) { 93 if (forget_last_username_) {
91 browser_state_->GetPrefs()->ClearPref(prefs::kGoogleServicesLastAccountId); 94 browser_state_->GetPrefs()->ClearPref(prefs::kGoogleServicesLastAccountId);
92 browser_state_->GetPrefs()->ClearPref(prefs::kGoogleServicesLastUsername); 95 browser_state_->GetPrefs()->ClearPref(prefs::kGoogleServicesLastUsername);
93 } 96 }
94 97
95 if (callback_) 98 if (callback_)
96 callback_.get()(); 99 callback_.get()();
97 100
98 base::ThreadTaskRunnerHandle::Get()->DeleteSoon(FROM_HERE, this); 101 base::ThreadTaskRunnerHandle::Get()->DeleteSoon(FROM_HERE, this);
99 } 102 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698