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

Side by Side Diff: ios/chrome/browser/ui/bookmarks/bookmark_menu_view.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_menu_view.h" 5 #import "ios/chrome/browser/ui/bookmarks/bookmark_menu_view.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/mac/foundation_util.h" 9 #include "base/mac/foundation_util.h"
10 #include "base/mac/objc_property_releaser.h" 10 #include "base/mac/objc_release_properties.h"
11 #include "base/mac/scoped_nsobject.h" 11 #include "base/mac/scoped_nsobject.h"
12 #include "components/bookmarks/browser/bookmark_model.h" 12 #include "components/bookmarks/browser/bookmark_model.h"
13 #include "components/bookmarks/browser/bookmark_model_observer.h" 13 #include "components/bookmarks/browser/bookmark_model_observer.h"
14 #include "ios/chrome/browser/bookmarks/bookmark_model_factory.h" 14 #include "ios/chrome/browser/bookmarks/bookmark_model_factory.h"
15 #include "ios/chrome/browser/bookmarks/bookmarks_utils.h" 15 #include "ios/chrome/browser/bookmarks/bookmarks_utils.h"
16 #include "ios/chrome/browser/browser_state/chrome_browser_state.h" 16 #include "ios/chrome/browser/browser_state/chrome_browser_state.h"
17 #include "ios/chrome/browser/experimental_flags.h" 17 #include "ios/chrome/browser/experimental_flags.h"
18 #import "ios/chrome/browser/ui/bookmarks/bookmark_menu_cell.h" 18 #import "ios/chrome/browser/ui/bookmarks/bookmark_menu_cell.h"
19 #import "ios/chrome/browser/ui/bookmarks/bookmark_menu_item.h" 19 #import "ios/chrome/browser/ui/bookmarks/bookmark_menu_item.h"
20 #include "ios/chrome/browser/ui/bookmarks/bookmark_model_bridge_observer.h" 20 #include "ios/chrome/browser/ui/bookmarks/bookmark_model_bridge_observer.h"
21 #import "ios/chrome/browser/ui/bookmarks/bookmark_utils_ios.h" 21 #import "ios/chrome/browser/ui/bookmarks/bookmark_utils_ios.h"
22 #include "ios/chrome/browser/ui/ui_util.h" 22 #include "ios/chrome/browser/ui/ui_util.h"
23 #import "ios/chrome/browser/ui/uikit_ui_util.h" 23 #import "ios/chrome/browser/ui/uikit_ui_util.h"
24 #include "ios/chrome/grit/ios_strings.h" 24 #include "ios/chrome/grit/ios_strings.h"
25 #import "ios/third_party/material_components_ios/src/components/Ink/src/Material Ink.h" 25 #import "ios/third_party/material_components_ios/src/components/Ink/src/Material Ink.h"
26 #include "ui/base/l10n/l10n_util.h" 26 #include "ui/base/l10n/l10n_util.h"
27 #include "ui/base/models/tree_node_iterator.h" 27 #include "ui/base/models/tree_node_iterator.h"
28 28
29 using bookmarks::BookmarkNode; 29 using bookmarks::BookmarkNode;
30 30
31 @interface BookmarkMenuView ()<BookmarkModelBridgeObserver, 31 @interface BookmarkMenuView ()<BookmarkModelBridgeObserver,
32 MDCInkTouchControllerDelegate, 32 MDCInkTouchControllerDelegate,
33 UITableViewDataSource, 33 UITableViewDataSource,
34 UITableViewDelegate> { 34 UITableViewDelegate> {
35 // A bridge to receive bookmark model observer callbacks. 35 // A bridge to receive bookmark model observer callbacks.
36 std::unique_ptr<bookmarks::BookmarkModelBridge> _modelBridge; 36 std::unique_ptr<bookmarks::BookmarkModelBridge> _modelBridge;
37
38 base::mac::ObjCPropertyReleaser _propertyReleaser_BookmarkMenuView;
39 } 37 }
40 @property(nonatomic, assign) bookmarks::BookmarkModel* bookmarkModel; 38 @property(nonatomic, assign) bookmarks::BookmarkModel* bookmarkModel;
41 // This array directly represents the rows that show up in the table. 39 // This array directly represents the rows that show up in the table.
42 @property(nonatomic, retain) NSMutableArray* menuItems; 40 @property(nonatomic, retain) NSMutableArray* menuItems;
43 // The primary menu item is blue instead of gray. 41 // The primary menu item is blue instead of gray.
44 @property(nonatomic, retain) BookmarkMenuItem* primaryMenuItem; 42 @property(nonatomic, retain) BookmarkMenuItem* primaryMenuItem;
45 @property(nonatomic, assign) ios::ChromeBrowserState* browserState; 43 @property(nonatomic, assign) ios::ChromeBrowserState* browserState;
46 @property(nonatomic, retain) UITableView* tableView; 44 @property(nonatomic, retain) UITableView* tableView;
47 @property(nonatomic, retain) MDCInkTouchController* inkTouchController; 45 @property(nonatomic, retain) MDCInkTouchController* inkTouchController;
48 46
(...skipping 16 matching lines...) Expand all
65 63
66 - (id)initWithFrame:(CGRect)frame { 64 - (id)initWithFrame:(CGRect)frame {
67 NOTREACHED(); 65 NOTREACHED();
68 return nil; 66 return nil;
69 } 67 }
70 68
71 - (instancetype)initWithBrowserState:(ios::ChromeBrowserState*)browserState 69 - (instancetype)initWithBrowserState:(ios::ChromeBrowserState*)browserState
72 frame:(CGRect)frame { 70 frame:(CGRect)frame {
73 self = [super initWithFrame:frame]; 71 self = [super initWithFrame:frame];
74 if (self) { 72 if (self) {
75 _propertyReleaser_BookmarkMenuView.Init(self, [BookmarkMenuView class]);
76
77 _browserState = browserState; 73 _browserState = browserState;
78 74
79 // Set up connection to the BookmarkModel. 75 // Set up connection to the BookmarkModel.
80 _bookmarkModel = 76 _bookmarkModel =
81 ios::BookmarkModelFactory::GetForBrowserState(_browserState); 77 ios::BookmarkModelFactory::GetForBrowserState(_browserState);
82 // Set up observers. 78 // Set up observers.
83 _modelBridge.reset( 79 _modelBridge.reset(
84 new bookmarks::BookmarkModelBridge(self, _bookmarkModel)); 80 new bookmarks::BookmarkModelBridge(self, _bookmarkModel));
85 81
86 self.menuItems = [NSMutableArray array]; 82 self.menuItems = [NSMutableArray array];
87 83
88 [self createViews]; 84 [self createViews];
89 } 85 }
90 return self; 86 return self;
91 } 87 }
92 88
93 - (void)dealloc { 89 - (void)dealloc {
94 self.tableView.delegate = nil; 90 self.tableView.delegate = nil;
95 self.tableView.dataSource = nil; 91 self.tableView.dataSource = nil;
92 base::mac::ReleaseProperties(self);
96 [super dealloc]; 93 [super dealloc];
97 } 94 }
98 95
99 - (void)createViews { 96 - (void)createViews {
100 // Make the table view. 97 // Make the table view.
101 self.tableView = base::scoped_nsobject<UITableView>( 98 self.tableView = base::scoped_nsobject<UITableView>(
102 [[UITableView alloc] initWithFrame:self.bounds]); 99 [[UITableView alloc] initWithFrame:self.bounds]);
103 [self addSubview:self.tableView]; 100 [self addSubview:self.tableView];
104 self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone; 101 self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
105 self.tableView.delegate = self; 102 self.tableView.delegate = self;
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after
420 417
421 self.primaryMenuItem = menuItem; 418 self.primaryMenuItem = menuItem;
422 [self.tableView reloadData]; 419 [self.tableView reloadData];
423 } 420 }
424 421
425 - (void)setScrollsToTop:(BOOL)scrollsToTop { 422 - (void)setScrollsToTop:(BOOL)scrollsToTop {
426 self.tableView.scrollsToTop = scrollsToTop; 423 self.tableView.scrollsToTop = scrollsToTop;
427 } 424 }
428 425
429 @end 426 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698