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

Side by Side Diff: ios/chrome/browser/ui/bookmarks/bookmark_folder_view_controller.mm

Issue 2610923005: Replace ObjCPropertyReleaser with ReleaseProperties() project-wide. (Closed)
Patch Set: weak -> assign Created 3 years, 11 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/ui/bookmarks/bookmark_folder_view_controller.h" 5 #import "ios/chrome/browser/ui/bookmarks/bookmark_folder_view_controller.h"
6 6
7 #include <memory> 7 #include <memory>
8 #include <vector> 8 #include <vector>
9 9
10 #import "base/ios/weak_nsobject.h" 10 #import "base/ios/weak_nsobject.h"
11 #include "base/logging.h" 11 #include "base/logging.h"
12 #include "base/mac/objc_property_releaser.h" 12 #include "base/mac/objc_release_properties.h"
13 #include "base/mac/scoped_nsobject.h" 13 #include "base/mac/scoped_nsobject.h"
14 #include "base/strings/sys_string_conversions.h" 14 #include "base/strings/sys_string_conversions.h"
15 #include "components/bookmarks/browser/bookmark_model.h" 15 #include "components/bookmarks/browser/bookmark_model.h"
16 #import "ios/chrome/browser/ui/bookmarks/bookmark_folder_editor_view_controller. h" 16 #import "ios/chrome/browser/ui/bookmarks/bookmark_folder_editor_view_controller. h"
17 #import "ios/chrome/browser/ui/bookmarks/bookmark_folder_table_view_cell.h" 17 #import "ios/chrome/browser/ui/bookmarks/bookmark_folder_table_view_cell.h"
18 #import "ios/chrome/browser/ui/bookmarks/bookmark_model_bridge_observer.h" 18 #import "ios/chrome/browser/ui/bookmarks/bookmark_model_bridge_observer.h"
19 #import "ios/chrome/browser/ui/bookmarks/bookmark_navigation_controller.h" 19 #import "ios/chrome/browser/ui/bookmarks/bookmark_navigation_controller.h"
20 #import "ios/chrome/browser/ui/bookmarks/bookmark_utils_ios.h" 20 #import "ios/chrome/browser/ui/bookmarks/bookmark_utils_ios.h"
21 #import "ios/chrome/browser/ui/icons/chrome_icon.h" 21 #import "ios/chrome/browser/ui/icons/chrome_icon.h"
22 #import "ios/chrome/browser/ui/material_components/utils.h" 22 #import "ios/chrome/browser/ui/material_components/utils.h"
(...skipping 25 matching lines...) Expand all
48 48
49 @interface BookmarkFolderViewController ()< 49 @interface BookmarkFolderViewController ()<
50 BookmarkFolderEditorViewControllerDelegate, 50 BookmarkFolderEditorViewControllerDelegate,
51 BookmarkModelBridgeObserver, 51 BookmarkModelBridgeObserver,
52 UITableViewDataSource, 52 UITableViewDataSource,
53 UITableViewDelegate> { 53 UITableViewDelegate> {
54 std::set<const BookmarkNode*> _editedNodes; 54 std::set<const BookmarkNode*> _editedNodes;
55 std::vector<const BookmarkNode*> _folders; 55 std::vector<const BookmarkNode*> _folders;
56 std::unique_ptr<bookmarks::BookmarkModelBridge> _modelBridge; 56 std::unique_ptr<bookmarks::BookmarkModelBridge> _modelBridge;
57 base::scoped_nsobject<MDCAppBar> _appBar; 57 base::scoped_nsobject<MDCAppBar> _appBar;
58 base::mac::ObjCPropertyReleaser
59 _propertyReleaser_BookmarkFolderViewController;
60 } 58 }
61 59
62 // Should the controller setup Cancel and Done buttons instead of a back button. 60 // Should the controller setup Cancel and Done buttons instead of a back button.
63 @property(nonatomic, assign) BOOL allowsCancel; 61 @property(nonatomic, assign) BOOL allowsCancel;
64 62
65 // Should the controller setup a new-folder button. 63 // Should the controller setup a new-folder button.
66 @property(nonatomic, assign) BOOL allowsNewFolders; 64 @property(nonatomic, assign) BOOL allowsNewFolders;
67 65
68 // Reference to the main bookmark model. 66 // Reference to the main bookmark model.
69 @property(nonatomic, assign) bookmarks::BookmarkModel* bookmarkModel; 67 @property(nonatomic, assign) bookmarks::BookmarkModel* bookmarkModel;
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 allowsNewFolders:(BOOL)allowsNewFolders 117 allowsNewFolders:(BOOL)allowsNewFolders
120 editedNodes: 118 editedNodes:
121 (const std::set<const BookmarkNode*>&)nodes 119 (const std::set<const BookmarkNode*>&)nodes
122 allowsCancel:(BOOL)allowsCancel 120 allowsCancel:(BOOL)allowsCancel
123 selectedFolder:(const BookmarkNode*)selectedFolder { 121 selectedFolder:(const BookmarkNode*)selectedFolder {
124 DCHECK(bookmarkModel); 122 DCHECK(bookmarkModel);
125 DCHECK(bookmarkModel->loaded()); 123 DCHECK(bookmarkModel->loaded());
126 DCHECK(selectedFolder == NULL || selectedFolder->is_folder()); 124 DCHECK(selectedFolder == NULL || selectedFolder->is_folder());
127 self = [super initWithNibName:nil bundle:nil]; 125 self = [super initWithNibName:nil bundle:nil];
128 if (self) { 126 if (self) {
129 _propertyReleaser_BookmarkFolderViewController.Init(
130 self, [BookmarkFolderViewController class]);
131 _allowsCancel = allowsCancel; 127 _allowsCancel = allowsCancel;
132 _allowsNewFolders = allowsNewFolders; 128 _allowsNewFolders = allowsNewFolders;
133 _bookmarkModel = bookmarkModel; 129 _bookmarkModel = bookmarkModel;
134 _editedNodes = nodes; 130 _editedNodes = nodes;
135 _selectedFolder = selectedFolder; 131 _selectedFolder = selectedFolder;
136 132
137 // Set up the bookmark model oberver. 133 // Set up the bookmark model oberver.
138 _modelBridge.reset( 134 _modelBridge.reset(
139 new bookmarks::BookmarkModelBridge(self, _bookmarkModel)); 135 new bookmarks::BookmarkModelBridge(self, _bookmarkModel));
140 136
141 _appBar.reset([[MDCAppBar alloc] init]); 137 _appBar.reset([[MDCAppBar alloc] init]);
142 [self addChildViewController:[_appBar headerViewController]]; 138 [self addChildViewController:[_appBar headerViewController]];
143 } 139 }
144 return self; 140 return self;
145 } 141 }
146 142
147 - (void)changeSelectedFolder:(const BookmarkNode*)selectedFolder { 143 - (void)changeSelectedFolder:(const BookmarkNode*)selectedFolder {
148 DCHECK(selectedFolder); 144 DCHECK(selectedFolder);
149 DCHECK(selectedFolder->is_folder()); 145 DCHECK(selectedFolder->is_folder());
150 _selectedFolder = selectedFolder; 146 _selectedFolder = selectedFolder;
151 [self.tableView reloadData]; 147 [self.tableView reloadData];
152 } 148 }
153 149
154 - (void)dealloc { 150 - (void)dealloc {
155 _tableView.dataSource = nil; 151 _tableView.dataSource = nil;
156 _tableView.delegate = nil; 152 _tableView.delegate = nil;
157 _folderAddController.delegate = nil; 153 _folderAddController.delegate = nil;
154 base::mac::ReleaseProperties(self);
158 [super dealloc]; 155 [super dealloc];
159 } 156 }
160 157
161 - (UIStatusBarStyle)preferredStatusBarStyle { 158 - (UIStatusBarStyle)preferredStatusBarStyle {
162 return UIStatusBarStyleDefault; 159 return UIStatusBarStyleDefault;
163 } 160 }
164 161
165 #pragma mark - View lifecycle 162 #pragma mark - View lifecycle
166 163
167 - (void)viewDidLoad { 164 - (void)viewDidLoad {
(...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after
546 [weakSelf retain]); 543 [weakSelf retain]);
547 // Early return if the controller has been deallocated. 544 // Early return if the controller has been deallocated.
548 if (!strongSelf) 545 if (!strongSelf)
549 return; 546 return;
550 strongSelf.get().view.userInteractionEnabled = YES; 547 strongSelf.get().view.userInteractionEnabled = YES;
551 [strongSelf done:nil]; 548 [strongSelf done:nil];
552 }); 549 });
553 } 550 }
554 551
555 @end 552 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698