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

Unified Diff: ios/chrome/browser/ui/settings/settings_navigation_controller.mm

Issue 2813223002: [ObjC ARC] Converts ios/chrome/browser/ui/settings:settings to ARC. (Closed)
Patch Set: reabse 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 side-by-side diff with in-line comments
Download patch
Index: ios/chrome/browser/ui/settings/settings_navigation_controller.mm
diff --git a/ios/chrome/browser/ui/settings/settings_navigation_controller.mm b/ios/chrome/browser/ui/settings/settings_navigation_controller.mm
index 9f7b5db3e61bb1f8d78401b73f278358bada50b5..894f8c303cc9623e89185911f69603858c865a8e 100644
--- a/ios/chrome/browser/ui/settings/settings_navigation_controller.mm
+++ b/ios/chrome/browser/ui/settings/settings_navigation_controller.mm
@@ -5,9 +5,7 @@
#import "ios/chrome/browser/ui/settings/settings_navigation_controller.h"
#include "base/ios/ios_util.h"
-#import "base/ios/weak_nsobject.h"
#include "base/mac/foundation_util.h"
-#import "base/mac/scoped_nsobject.h"
#include "components/strings/grit/components_strings.h"
#include "ios/chrome/browser/browser_state/chrome_browser_state.h"
#include "ios/chrome/browser/sync/sync_setup_service.h"
@@ -40,6 +38,10 @@
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/l10n/l10n_util_mac.h"
+#if !defined(__has_feature) || !__has_feature(objc_arc)
+#error "This file requires ARC support."
+#endif
+
// TODO(crbug.com/620361): Remove the entire class when iOS 9 is dropped.
@interface SettingsAppBarContainerViewController
: MDCAppBarContainerViewController
@@ -100,10 +102,10 @@
@implementation SettingsNavigationController {
ios::ChromeBrowserState* mainBrowserState_; // weak
- base::WeakNSProtocol<id<SettingsNavigationControllerDelegate>> delegate_;
+ __weak id<SettingsNavigationControllerDelegate> delegate_;
// Keeps a mapping between the view controllers that are wrapped to display an
// app bar and the containers that wrap them.
- base::scoped_nsobject<NSMutableDictionary> appBarContainedViewControllers_;
+ NSMutableDictionary* appBarContainedViewControllers_;
}
@synthesize shouldCommitSyncChangesOnDismissal =
@@ -119,10 +121,9 @@
delegate:
(id<SettingsNavigationControllerDelegate>)delegate {
// clang-format on
- base::scoped_nsobject<UIViewController> controller(
- [[SettingsCollectionViewController alloc]
- initWithBrowserState:browserState
- currentBrowserState:currentBrowserState]);
+ UIViewController* controller = [[SettingsCollectionViewController alloc]
+ initWithBrowserState:browserState
+ currentBrowserState:currentBrowserState];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
browserState:browserState
@@ -134,9 +135,9 @@
+ (SettingsNavigationController*)
newAccountsController:(ios::ChromeBrowserState*)browserState
delegate:(id<SettingsNavigationControllerDelegate>)delegate {
- base::scoped_nsobject<UIViewController> controller([
- [AccountsCollectionViewController alloc] initWithBrowserState:browserState
- closeSettingsOnAddAccount:YES]);
+ UIViewController* controller = [[AccountsCollectionViewController alloc]
+ initWithBrowserState:browserState
+ closeSettingsOnAddAccount:YES];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
browserState:browserState
@@ -149,10 +150,9 @@ newAccountsController:(ios::ChromeBrowserState*)browserState
newSyncController:(ios::ChromeBrowserState*)browserState
allowSwitchSyncAccount:(BOOL)allowSwitchSyncAccount
delegate:(id<SettingsNavigationControllerDelegate>)delegate {
- base::scoped_nsobject<UIViewController> controller(
- [[SyncSettingsCollectionViewController alloc]
- initWithBrowserState:browserState
- allowSwitchSyncAccount:allowSwitchSyncAccount]);
+ UIViewController* controller = [[SyncSettingsCollectionViewController alloc]
+ initWithBrowserState:browserState
+ allowSwitchSyncAccount:allowSwitchSyncAccount];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
browserState:browserState
@@ -168,10 +168,9 @@ newUserFeedbackController:(ios::ChromeBrowserState*)browserState
DCHECK(ios::GetChromeBrowserProvider()
->GetUserFeedbackProvider()
->IsUserFeedbackEnabled());
- base::scoped_nsobject<UIViewController> controller(
- ios::GetChromeBrowserProvider()
- ->GetUserFeedbackProvider()
- ->CreateViewController(dataSource));
+ UIViewController* controller = ios::GetChromeBrowserProvider()
+ ->GetUserFeedbackProvider()
+ ->CreateViewController(dataSource);
DCHECK(controller);
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
@@ -185,9 +184,9 @@ newUserFeedbackController:(ios::ChromeBrowserState*)browserState
newClearBrowsingDataController:(ios::ChromeBrowserState*)browserState
delegate:
(id<SettingsNavigationControllerDelegate>)delegate {
- base::scoped_nsobject<UIViewController> controller(
+ UIViewController* controller =
[[ClearBrowsingDataCollectionViewController alloc]
- initWithBrowserState:browserState]);
+ initWithBrowserState:browserState];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
browserState:browserState
@@ -200,9 +199,9 @@ newClearBrowsingDataController:(ios::ChromeBrowserState*)browserState
newContextualSearchController:(ios::ChromeBrowserState*)browserState
delegate:
(id<SettingsNavigationControllerDelegate>)delegate {
- base::scoped_nsobject<UIViewController> controller(
+ UIViewController* controller =
[[ContextualSearchCollectionViewController alloc]
- initWithBrowserState:browserState]);
+ initWithBrowserState:browserState];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
browserState:browserState
@@ -215,9 +214,9 @@ newContextualSearchController:(ios::ChromeBrowserState*)browserState
newSyncEncryptionPassphraseController:(ios::ChromeBrowserState*)browserState
delegate:(id<SettingsNavigationControllerDelegate>)
delegate {
- base::scoped_nsobject<UIViewController> controller(
+ UIViewController* controller =
[[SyncEncryptionPassphraseCollectionViewController alloc]
- initWithBrowserState:browserState]);
+ initWithBrowserState:browserState];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
browserState:browserState
@@ -229,9 +228,8 @@ newSyncEncryptionPassphraseController:(ios::ChromeBrowserState*)browserState
+ (SettingsNavigationController*)
newNativeAppsController:(ios::ChromeBrowserState*)browserState
delegate:(id<SettingsNavigationControllerDelegate>)delegate {
- base::scoped_nsobject<UIViewController> controller(
- [[NativeAppsCollectionViewController alloc]
- initWithURLRequestContextGetter:browserState->GetRequestContext()]);
+ UIViewController* controller = [[NativeAppsCollectionViewController alloc]
+ initWithURLRequestContextGetter:browserState->GetRequestContext()];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
browserState:browserState
@@ -242,9 +240,8 @@ newNativeAppsController:(ios::ChromeBrowserState*)browserState
+ (SettingsNavigationController*)
newSavePasswordsController:(ios::ChromeBrowserState*)browserState
delegate:(id<SettingsNavigationControllerDelegate>)delegate {
- base::scoped_nsobject<UIViewController> controller(
- [[SavePasswordsCollectionViewController alloc]
- initWithBrowserState:browserState]);
+ UIViewController* controller = [[SavePasswordsCollectionViewController alloc]
+ initWithBrowserState:browserState];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
@@ -265,12 +262,11 @@ newImportDataController:(ios::ChromeBrowserState*)browserState
fromEmail:(NSString*)fromEmail
toEmail:(NSString*)toEmail
isSignedIn:(BOOL)isSignedIn {
- base::scoped_nsobject<UIViewController> controller(
- [[ImportDataCollectionViewController alloc]
- initWithDelegate:importDataDelegate
- fromEmail:fromEmail
- toEmail:toEmail
- isSignedIn:isSignedIn]);
+ UIViewController* controller = [[ImportDataCollectionViewController alloc]
+ initWithDelegate:importDataDelegate
+ fromEmail:fromEmail
+ toEmail:toEmail
+ isSignedIn:isSignedIn];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
@@ -286,9 +282,8 @@ newImportDataController:(ios::ChromeBrowserState*)browserState
+ (SettingsNavigationController*)
newAutofillController:(ios::ChromeBrowserState*)browserState
delegate:(id<SettingsNavigationControllerDelegate>)delegate {
- base::scoped_nsobject<UIViewController> controller(
- [[AutofillCollectionViewController alloc]
- initWithBrowserState:browserState]);
+ UIViewController* controller = [[AutofillCollectionViewController alloc]
+ initWithBrowserState:browserState];
SettingsNavigationController* nc = [[SettingsNavigationController alloc]
initWithRootViewController:controller
@@ -313,7 +308,7 @@ initWithRootViewController:(UIViewController*)rootViewController
self = [super initWithRootViewController:rootViewController];
if (self) {
mainBrowserState_ = browserState;
- delegate_.reset(delegate);
+ delegate_ = delegate;
shouldCommitSyncChangesOnDismissal_ = YES;
[self configureUI];
}
@@ -337,7 +332,7 @@ initWithRootViewController:(UIViewController*)rootViewController
// Reset the delegate to prevent any queued transitions from attempting to
// close the settings.
- delegate_.reset();
+ delegate_ = nil;
}
- (void)closeSettings {
@@ -375,7 +370,7 @@ initWithRootViewController:(UIViewController*)rootViewController
self.topViewController.navigationItem.rightBarButtonItem;
if (!rightButton)
return NO;
- base::scoped_nsobject<UIBarButtonItem> doneButton([self doneButton]);
+ UIBarButtonItem* doneButton = [self doneButton];
return [rightButton style] == [doneButton style] &&
[[rightButton title] compare:[doneButton title]] == NSOrderedSame;
}
@@ -391,11 +386,11 @@ initWithRootViewController:(UIViewController*)rootViewController
- (UIBarButtonItem*)doneButton {
// Create a custom Done bar button item, as Material Navigation Bar does not
// handle a system UIBarButtonSystemItemDone item.
- return [[[UIBarButtonItem alloc]
+ return [[UIBarButtonItem alloc]
initWithTitle:l10n_util::GetNSString(IDS_IOS_NAVIGATION_BAR_DONE_BUTTON)
style:UIBarButtonItemStyleDone
target:self
- action:@selector(closeSettings)] autorelease];
+ action:@selector(closeSettings)];
}
- (UIBarButtonItem*)closeButton {
@@ -410,11 +405,11 @@ initWithRootViewController:(UIViewController*)rootViewController
- (UIBarButtonItem*)cancelButton {
// Create a custom Cancel bar button item, as Material Navigation Bar does not
// handle a system UIBarButtonSystemItemCancel item.
- return [[[UIBarButtonItem alloc]
+ return [[UIBarButtonItem alloc]
initWithTitle:l10n_util::GetNSString(IDS_IOS_NAVIGATION_BAR_CANCEL_BUTTON)
style:UIBarButtonItemStyleDone
target:self
- action:@selector(closeSettings)] autorelease];
+ action:@selector(closeSettings)];
}
- (UIInterfaceOrientationMask)supportedInterfaceOrientations {
@@ -529,25 +524,24 @@ initWithRootViewController:(UIViewController*)rootViewController
// it can just be forwarded it up the responder chain.
break;
case IDC_SHOW_ACCOUNTS_SETTINGS: {
- base::scoped_nsobject<UIViewController> controller(
- [[AccountsCollectionViewController alloc]
- initWithBrowserState:mainBrowserState_
- closeSettingsOnAddAccount:NO]);
+ UIViewController* controller = [[AccountsCollectionViewController alloc]
+ initWithBrowserState:mainBrowserState_
+ closeSettingsOnAddAccount:NO];
[self pushViewController:controller animated:YES];
return;
}
case IDC_SHOW_SYNC_SETTINGS: {
- base::scoped_nsobject<UIViewController> controller(
+ UIViewController* controller =
[[SyncSettingsCollectionViewController alloc]
initWithBrowserState:mainBrowserState_
- allowSwitchSyncAccount:YES]);
+ allowSwitchSyncAccount:YES];
[self pushViewController:controller animated:YES];
return;
}
case IDC_SHOW_SYNC_PASSPHRASE_SETTINGS: {
- base::scoped_nsobject<UIViewController> controller(
+ UIViewController* controller =
[[SyncEncryptionPassphraseCollectionViewController alloc]
- initWithBrowserState:mainBrowserState_]);
+ initWithBrowserState:mainBrowserState_];
[self pushViewController:controller animated:YES];
return;
}
@@ -565,7 +559,7 @@ initWithRootViewController:(UIViewController*)rootViewController
if ([self presentedViewController]) {
return nil;
}
- base::WeakNSObject<SettingsNavigationController> weakSelf(self);
+ __weak SettingsNavigationController* weakSelf = self;
return @[
[UIKeyCommand cr_keyCommandWithInput:UIKeyInputEscape
modifierFlags:Cr_UIKeyModifierNone
@@ -613,8 +607,8 @@ initWithRootViewController:(UIViewController*)rootViewController
// wrapped in an MDCAppBarContainerViewController.
if (![controller conformsToProtocol:@protocol(AppBarPresenting)]) {
MDCAppBarContainerViewController* appBarContainer =
- [[[SettingsAppBarContainerViewController alloc]
- initWithContentViewController:controller] autorelease];
+ [[SettingsAppBarContainerViewController alloc]
+ initWithContentViewController:controller];
// Configure the style.
ConfigureAppBarWithCardStyle(appBarContainer.appBar);
@@ -654,7 +648,7 @@ initWithRootViewController:(UIViewController*)rootViewController
// controller's pointer to itself.
- (void)registerAppBarContainer:(MDCAppBarContainerViewController*)container {
if (!appBarContainedViewControllers_) {
- appBarContainedViewControllers_.reset([[NSMutableDictionary alloc] init]);
+ appBarContainedViewControllers_ = [[NSMutableDictionary alloc] init];
}
NSValue* key = [self keyForController:[container contentViewController]];
[appBarContainedViewControllers_ setObject:container forKey:key];
@@ -676,7 +670,7 @@ initWithRootViewController:(UIViewController*)rootViewController
// Returns the dictionary key to use when dealing with |controller|.
- (NSValue*)keyForController:(UIViewController*)controller {
- return [NSValue valueWithPointer:controller];
+ return [NSValue valueWithNonretainedObject:controller];
}
#pragma mark - UIResponder

Powered by Google App Engine
This is Rietveld 408576698