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

Side by Side Diff: ios/chrome/browser/ui/ntp/new_tab_page_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 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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/ntp/new_tab_page_controller.h" 5 #import "ios/chrome/browser/ui/ntp/new_tab_page_controller.h"
6 6
7 #import <QuartzCore/QuartzCore.h> 7 #import <QuartzCore/QuartzCore.h>
8 8
9 #import "base/ios/weak_nsobject.h" 9 #import "base/ios/weak_nsobject.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
11 #include "base/mac/objc_property_releaser.h" 11 #include "base/mac/objc_release_properties.h"
12 #include "base/metrics/user_metrics.h" 12 #include "base/metrics/user_metrics.h"
13 #include "base/metrics/user_metrics_action.h" 13 #include "base/metrics/user_metrics_action.h"
14 #include "components/prefs/pref_service.h" 14 #include "components/prefs/pref_service.h"
15 #include "components/search_engines/template_url_service.h" 15 #include "components/search_engines/template_url_service.h"
16 #include "components/strings/grit/components_strings.h" 16 #include "components/strings/grit/components_strings.h"
17 #include "components/sync_sessions/synced_session.h" 17 #include "components/sync_sessions/synced_session.h"
18 #include "ios/chrome/browser/browser_state/chrome_browser_state.h" 18 #include "ios/chrome/browser/browser_state/chrome_browser_state.h"
19 #include "ios/chrome/browser/pref_names.h" 19 #include "ios/chrome/browser/pref_names.h"
20 #include "ios/chrome/browser/search_engines/template_url_service_factory.h" 20 #include "ios/chrome/browser/search_engines/template_url_service_factory.h"
21 #include "ios/chrome/browser/sync/sync_setup_service.h" 21 #include "ios/chrome/browser/sync/sync_setup_service.h"
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 MOST_VISITED_PAGE_ID = 1 << kPageIdOffset, 101 MOST_VISITED_PAGE_ID = 1 << kPageIdOffset,
102 BOOKMARKS_PAGE_ID = 3 << kPageIdOffset, 102 BOOKMARKS_PAGE_ID = 3 << kPageIdOffset,
103 OPEN_TABS_PAGE_ID = 4 << kPageIdOffset, 103 OPEN_TABS_PAGE_ID = 4 << kPageIdOffset,
104 }; 104 };
105 105
106 } // anonymous namespace 106 } // anonymous namespace
107 107
108 @interface NewTabPageController () { 108 @interface NewTabPageController () {
109 ios::ChromeBrowserState* browserState_; // Weak. 109 ios::ChromeBrowserState* browserState_; // Weak.
110 id<UrlLoader> loader_; // Weak. 110 id<UrlLoader> loader_; // Weak.
111 id<CRWSwipeRecognizerProvider> swipeRecognizerProvider_; // Weak.
112 id<NewTabPageControllerObserver> newTabPageObserver_; // Weak. 111 id<NewTabPageControllerObserver> newTabPageObserver_; // Weak.
113 112
114 NewTabPageView* newTabPageView_;
115
116 base::scoped_nsobject<RecentTabsPanelController> openTabsController_; 113 base::scoped_nsobject<RecentTabsPanelController> openTabsController_;
117 // Has the scrollView been initialized. 114 // Has the scrollView been initialized.
118 BOOL scrollInitialized_; 115 BOOL scrollInitialized_;
119 116
120 // Dominant color cache. Key: (NSString*)url, val: (UIColor*)dominantColor. 117 // Dominant color cache. Key: (NSString*)url, val: (UIColor*)dominantColor.
121 NSMutableDictionary* dominantColorCache_; // Weak, owned by bvc. 118 NSMutableDictionary* dominantColorCache_; // Weak, owned by bvc.
122 119
123 // Delegate to focus and blur the omnibox. 120 // Delegate to focus and blur the omnibox.
124 base::WeakNSProtocol<id<OmniboxFocuser>> focuser_; 121 base::WeakNSProtocol<id<OmniboxFocuser>> focuser_;
125 122
126 // Delegate to fetch the ToolbarModel and current web state from. 123 // Delegate to fetch the ToolbarModel and current web state from.
127 base::WeakNSProtocol<id<WebToolbarDelegate>> webToolbarDelegate_; 124 base::WeakNSProtocol<id<WebToolbarDelegate>> webToolbarDelegate_;
128 125
129 base::scoped_nsobject<TabModel> tabModel_; 126 base::scoped_nsobject<TabModel> tabModel_;
130
131 base::mac::ObjCPropertyReleaser propertyReleaser_NewTabPageController_;
132 } 127 }
133 128
134 // Load and bring panel into view. 129 // Load and bring panel into view.
135 - (void)showPanel:(NewTabPageBarItem*)item; 130 - (void)showPanel:(NewTabPageBarItem*)item;
136 // Load panel on demand. 131 // Load panel on demand.
137 - (BOOL)loadPanel:(NewTabPageBarItem*)item; 132 - (BOOL)loadPanel:(NewTabPageBarItem*)item;
138 // After a panel changes, update metrics and prefs information. 133 // After a panel changes, update metrics and prefs information.
139 - (void)panelChanged:(NewTabPageBarItem*)item; 134 - (void)panelChanged:(NewTabPageBarItem*)item;
140 // Update current controller and tab bar index. Used to call reload. 135 // Update current controller and tab bar index. Used to call reload.
141 - (void)updateCurrentController:(NewTabPageBarItem*)item 136 - (void)updateCurrentController:(NewTabPageBarItem*)item
(...skipping 27 matching lines...) Expand all
169 loader:(id<UrlLoader>)loader 164 loader:(id<UrlLoader>)loader
170 focuser:(id<OmniboxFocuser>)focuser 165 focuser:(id<OmniboxFocuser>)focuser
171 ntpObserver:(id<NewTabPageControllerObserver>)ntpObserver 166 ntpObserver:(id<NewTabPageControllerObserver>)ntpObserver
172 browserState:(ios::ChromeBrowserState*)browserState 167 browserState:(ios::ChromeBrowserState*)browserState
173 colorCache:(NSMutableDictionary*)colorCache 168 colorCache:(NSMutableDictionary*)colorCache
174 webToolbarDelegate:(id<WebToolbarDelegate>)webToolbarDelegate 169 webToolbarDelegate:(id<WebToolbarDelegate>)webToolbarDelegate
175 tabModel:(TabModel*)tabModel { 170 tabModel:(TabModel*)tabModel {
176 self = [super initWithNibName:nil url:url]; 171 self = [super initWithNibName:nil url:url];
177 if (self) { 172 if (self) {
178 DCHECK(browserState); 173 DCHECK(browserState);
179 propertyReleaser_NewTabPageController_.Init(self,
180 [NewTabPageController class]);
181 browserState_ = browserState; 174 browserState_ = browserState;
182 loader_ = loader; 175 loader_ = loader;
183 newTabPageObserver_ = ntpObserver; 176 newTabPageObserver_ = ntpObserver;
184 focuser_.reset(focuser); 177 focuser_.reset(focuser);
185 webToolbarDelegate_.reset(webToolbarDelegate); 178 webToolbarDelegate_.reset(webToolbarDelegate);
186 tabModel_.reset([tabModel retain]); 179 tabModel_.reset([tabModel retain]);
187 dominantColorCache_ = colorCache; 180 dominantColorCache_ = colorCache;
188 self.title = l10n_util::GetNSString(IDS_NEW_TAB_TITLE); 181 self.title = l10n_util::GetNSString(IDS_NEW_TAB_TITLE);
189 scrollInitialized_ = NO; 182 scrollInitialized_ = NO;
190 183
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 } 268 }
276 269
277 - (void)dealloc { 270 - (void)dealloc {
278 // Animations can last past the life of the NTP controller, nil out the 271 // Animations can last past the life of the NTP controller, nil out the
279 // delegate. 272 // delegate.
280 self.ntpView.scrollView.delegate = nil; 273 self.ntpView.scrollView.delegate = nil;
281 [googleLandingController_ setDelegate:nil]; 274 [googleLandingController_ setDelegate:nil];
282 [bookmarkController_ setDelegate:nil]; 275 [bookmarkController_ setDelegate:nil];
283 [openTabsController_ setDelegate:nil]; 276 [openTabsController_ setDelegate:nil];
284 [[NSNotificationCenter defaultCenter] removeObserver:self]; 277 [[NSNotificationCenter defaultCenter] removeObserver:self];
278 base::mac::ReleaseProperties(self);
285 [super dealloc]; 279 [super dealloc];
286 } 280 }
287 281
288 #pragma mark - CRWNativeContent 282 #pragma mark - CRWNativeContent
289 283
290 // Note: No point implementing -handleLowMemory because all native content 284 // Note: No point implementing -handleLowMemory because all native content
291 // views but the selected one are dropped, and the selected view doesn't 285 // views but the selected one are dropped, and the selected view doesn't
292 // need to do anything. 286 // need to do anything.
293 287
294 - (void)reload { 288 - (void)reload {
(...skipping 381 matching lines...) Expand 10 before | Expand all | Expand 10 after
676 670
677 - (void)updateNtpBarShadowForPanelController: 671 - (void)updateNtpBarShadowForPanelController:
678 (id<NewTabPagePanelProtocol>)ntpPanelController { 672 (id<NewTabPagePanelProtocol>)ntpPanelController {
679 if (currentController_ != ntpPanelController) 673 if (currentController_ != ntpPanelController)
680 return; 674 return;
681 [self.ntpView.tabBar 675 [self.ntpView.tabBar
682 setShadowAlpha:[ntpPanelController alphaForBottomShadow]]; 676 setShadowAlpha:[ntpPanelController alphaForBottomShadow]];
683 } 677 }
684 678
685 @end 679 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698