| Index: ios/chrome/browser/ui/bookmarks/bookmark_edit_view_controller.mm
|
| diff --git a/ios/chrome/browser/ui/bookmarks/bookmark_edit_view_controller.mm b/ios/chrome/browser/ui/bookmarks/bookmark_edit_view_controller.mm
|
| index 96a88858ed36cc44acd1f870da1d4a675c70f7ad..f742137fe58c010c30415151cfe5b908abc115d0 100644
|
| --- a/ios/chrome/browser/ui/bookmarks/bookmark_edit_view_controller.mm
|
| +++ b/ios/chrome/browser/ui/bookmarks/bookmark_edit_view_controller.mm
|
| @@ -9,13 +9,11 @@
|
|
|
| #include "base/auto_reset.h"
|
| #include "base/ios/block_types.h"
|
| -#include "base/ios/weak_nsobject.h"
|
| #include "base/logging.h"
|
| #include "base/mac/bind_objc_block.h"
|
| #import "base/mac/foundation_util.h"
|
| -#include "base/mac/objc_property_releaser.h"
|
| +
|
| #include "base/mac/scoped_cftyperef.h"
|
| -#include "base/mac/scoped_nsobject.h"
|
| #include "base/strings/sys_string_conversions.h"
|
| #include "components/bookmarks/browser/bookmark_model.h"
|
| #include "components/url_formatter/url_fixer.h"
|
| @@ -45,6 +43,10 @@
|
| #include "ui/gfx/image/image.h"
|
| #include "url/gurl.h"
|
|
|
| +#if !defined(__has_feature) || !__has_feature(objc_arc)
|
| +#error "This file requires ARC support."
|
| +#endif
|
| +
|
| using bookmarks::BookmarkModel;
|
| using bookmarks::BookmarkNode;
|
|
|
| @@ -78,8 +80,6 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
| BOOL _ignoresBookmarkModelChanges;
|
|
|
| std::unique_ptr<bookmarks::BookmarkModelBridge> _modelBridge;
|
| -
|
| - base::mac::ObjCPropertyReleaser _propertyReleaser_BookmarkEditViewController;
|
| }
|
|
|
| // The bookmark this controller displays or edits.
|
| @@ -97,20 +97,20 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
|
|
| // The folder picker view controller.
|
| // Redefined to be readwrite.
|
| -@property(nonatomic, retain) BookmarkFolderViewController* folderViewController;
|
| +@property(nonatomic, strong) BookmarkFolderViewController* folderViewController;
|
|
|
| @property(nonatomic, assign) ios::ChromeBrowserState* browserState;
|
|
|
| // Cancel button item in navigation bar.
|
| -@property(nonatomic, retain) UIBarButtonItem* cancelItem;
|
| +@property(nonatomic, strong) UIBarButtonItem* cancelItem;
|
|
|
| // Done button item in navigation bar.
|
| -@property(nonatomic, retain) UIBarButtonItem* doneItem;
|
| +@property(nonatomic, strong) UIBarButtonItem* doneItem;
|
|
|
| // CollectionViewItem-s from the collection.
|
| -@property(nonatomic, retain) BookmarkTextFieldItem* nameItem;
|
| -@property(nonatomic, retain) BookmarkParentFolderItem* folderItem;
|
| -@property(nonatomic, retain) BookmarkTextFieldItem* URLItem;
|
| +@property(nonatomic, strong) BookmarkTextFieldItem* nameItem;
|
| +@property(nonatomic, strong) BookmarkParentFolderItem* folderItem;
|
| +@property(nonatomic, strong) BookmarkTextFieldItem* URLItem;
|
|
|
| // Reports the changes to the delegate, that has the responsibility to save the
|
| // bookmark.
|
| @@ -168,8 +168,6 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
| DCHECK(browserState);
|
| self = [super initWithStyle:CollectionViewControllerStyleAppBar];
|
| if (self) {
|
| - _propertyReleaser_BookmarkEditViewController.Init(
|
| - self, [BookmarkEditViewController class]);
|
| DCHECK(!bookmark->is_folder());
|
| DCHECK(!browserState->IsOffTheRecord());
|
| _bookmark = bookmark;
|
| @@ -189,7 +187,6 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
|
|
| - (void)dealloc {
|
| _folderViewController.delegate = nil;
|
| - [super dealloc];
|
| }
|
|
|
| #pragma mark View lifecycle
|
| @@ -211,36 +208,34 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
| self.navigationItem.leftBarButtonItem = cancelItem;
|
| self.cancelItem = cancelItem;
|
|
|
| - base::scoped_nsobject<UIBarButtonItem> doneItem([[UIBarButtonItem alloc]
|
| + UIBarButtonItem* doneItem = [[UIBarButtonItem alloc]
|
| initWithTitle:l10n_util::GetNSString(IDS_IOS_BOOKMARK_DONE_BUTTON)
|
| style:UIBarButtonItemStylePlain
|
| target:self
|
| - action:@selector(save)]);
|
| - doneItem.get().accessibilityIdentifier = @"Done";
|
| + action:@selector(save)];
|
| + doneItem.accessibilityIdentifier = @"Done";
|
| self.navigationItem.rightBarButtonItem = doneItem;
|
| self.doneItem = doneItem;
|
|
|
| - base::scoped_nsobject<BookmarksElevatedToolbar> buttonBar(
|
| - [[BookmarksElevatedToolbar alloc] init]);
|
| - base::scoped_nsobject<UIBarButtonItem> deleteItem([[UIBarButtonItem alloc]
|
| + BookmarksElevatedToolbar* buttonBar = [[BookmarksElevatedToolbar alloc] init];
|
| + UIBarButtonItem* deleteItem = [[UIBarButtonItem alloc]
|
| initWithTitle:l10n_util::GetNSString(IDS_IOS_BOOKMARK_DELETE)
|
| style:UIBarButtonItemStylePlain
|
| target:self
|
| - action:@selector(deleteBookmark)]);
|
| - deleteItem.get().accessibilityIdentifier = @"Delete_action";
|
| + action:@selector(deleteBookmark)];
|
| + deleteItem.accessibilityIdentifier = @"Delete_action";
|
| [deleteItem setTitleTextAttributes:@{
|
| NSForegroundColorAttributeName : [UIColor blackColor]
|
| }
|
| forState:UIControlStateNormal];
|
| - [buttonBar.get().layer
|
| - addSublayer:[[[MDCShadowLayer alloc] init] autorelease]];
|
| - buttonBar.get().shadowElevation = MDCShadowElevationSearchBarResting;
|
| - buttonBar.get().backgroundColor = [UIColor whiteColor];
|
| - buttonBar.get().items = @[ deleteItem ];
|
| + [buttonBar.layer addSublayer:[[MDCShadowLayer alloc] init]];
|
| + buttonBar.shadowElevation = MDCShadowElevationSearchBarResting;
|
| + buttonBar.backgroundColor = [UIColor whiteColor];
|
| + buttonBar.items = @[ deleteItem ];
|
| [self.view addSubview:buttonBar];
|
|
|
| // Constraint |buttonBar| to be in bottom
|
| - buttonBar.get().translatesAutoresizingMaskIntoConstraints = NO;
|
| + buttonBar.translatesAutoresizingMaskIntoConstraints = NO;
|
| [self.view addConstraints:
|
| [NSLayoutConstraint
|
| constraintsWithVisualFormat:@"H:|[buttonBar]|"
|
| @@ -348,8 +343,7 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
|
|
| [model addSectionWithIdentifier:SectionIdentifierInfo];
|
|
|
| - self.nameItem =
|
| - [[[BookmarkTextFieldItem alloc] initWithType:ItemTypeName] autorelease];
|
| + self.nameItem = [[BookmarkTextFieldItem alloc] initWithType:ItemTypeName];
|
| self.nameItem.accessibilityIdentifier = @"Title Field";
|
| self.nameItem.placeholder =
|
| l10n_util::GetNSString(IDS_IOS_BOOKMARK_NAME_FIELD_HEADER);
|
| @@ -357,13 +351,12 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
| self.nameItem.delegate = self;
|
| [model addItem:self.nameItem toSectionWithIdentifier:SectionIdentifierInfo];
|
|
|
| - self.folderItem = [[[BookmarkParentFolderItem alloc]
|
| - initWithType:ItemTypeFolder] autorelease];
|
| + self.folderItem =
|
| + [[BookmarkParentFolderItem alloc] initWithType:ItemTypeFolder];
|
| self.folderItem.title = bookmark_utils_ios::TitleForBookmarkNode(self.folder);
|
| [model addItem:self.folderItem toSectionWithIdentifier:SectionIdentifierInfo];
|
|
|
| - self.URLItem =
|
| - [[[BookmarkTextFieldItem alloc] initWithType:ItemTypeURL] autorelease];
|
| + self.URLItem = [[BookmarkTextFieldItem alloc] initWithType:ItemTypeURL];
|
| self.URLItem.accessibilityIdentifier = @"URL Field";
|
| self.URLItem.placeholder =
|
| l10n_util::GetNSString(IDS_IOS_BOOKMARK_URL_FIELD_HEADER);
|
| @@ -410,14 +403,14 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
|
|
| std::set<const BookmarkNode*> editedNodes;
|
| editedNodes.insert(self.bookmark);
|
| - base::scoped_nsobject<BookmarkFolderViewController> folderViewController(
|
| + BookmarkFolderViewController* folderViewController =
|
| [[BookmarkFolderViewController alloc]
|
| initWithBookmarkModel:self.bookmarkModel
|
| allowsNewFolders:YES
|
| editedNodes:editedNodes
|
| allowsCancel:NO
|
| - selectedFolder:self.folder]);
|
| - folderViewController.get().delegate = self;
|
| + selectedFolder:self.folder];
|
| + folderViewController.delegate = self;
|
| self.folderViewController = folderViewController;
|
|
|
| [self.navigationController pushViewController:self.folderViewController
|
| @@ -583,7 +576,7 @@ typedef NS_ENUM(NSInteger, ItemType) {
|
| #pragma mark - UIResponder
|
|
|
| - (NSArray*)keyCommands {
|
| - base::WeakNSObject<BookmarkEditViewController> weakSelf(self);
|
| + __weak BookmarkEditViewController* weakSelf = self;
|
| return @[ [UIKeyCommand cr_keyCommandWithInput:UIKeyInputEscape
|
| modifierFlags:Cr_UIKeyModifierNone
|
| title:nil
|
|
|