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

Side by Side Diff: ios/chrome/browser/ui/ntp/new_tab_page_controller.mm

Issue 2881183002: Revert of Replace ObjCPropertyReleaser with ReleaseProperties() project-wide. (Closed)
Patch Set: 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 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_release_properties.h" 11 #include "base/mac/objc_property_releaser.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 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
124 // Dominant color cache. Key: (NSString*)url, val: (UIColor*)dominantColor. 124 // Dominant color cache. Key: (NSString*)url, val: (UIColor*)dominantColor.
125 NSMutableDictionary* dominantColorCache_; // Weak, owned by bvc. 125 NSMutableDictionary* dominantColorCache_; // Weak, owned by bvc.
126 126
127 // Delegate to focus and blur the omnibox. 127 // Delegate to focus and blur the omnibox.
128 base::WeakNSProtocol<id<OmniboxFocuser>> focuser_; 128 base::WeakNSProtocol<id<OmniboxFocuser>> focuser_;
129 129
130 // Delegate to fetch the ToolbarModel and current web state from. 130 // Delegate to fetch the ToolbarModel and current web state from.
131 base::WeakNSProtocol<id<WebToolbarDelegate>> webToolbarDelegate_; 131 base::WeakNSProtocol<id<WebToolbarDelegate>> webToolbarDelegate_;
132 132
133 base::scoped_nsobject<TabModel> tabModel_; 133 base::scoped_nsobject<TabModel> tabModel_;
134
135 base::mac::ObjCPropertyReleaser propertyReleaser_NewTabPageController_;
134 } 136 }
135 137
136 // Load and bring panel into view. 138 // Load and bring panel into view.
137 - (void)showPanel:(NewTabPageBarItem*)item; 139 - (void)showPanel:(NewTabPageBarItem*)item;
138 // Load panel on demand. 140 // Load panel on demand.
139 - (BOOL)loadPanel:(NewTabPageBarItem*)item; 141 - (BOOL)loadPanel:(NewTabPageBarItem*)item;
140 // After a panel changes, update metrics and prefs information. 142 // After a panel changes, update metrics and prefs information.
141 - (void)panelChanged:(NewTabPageBarItem*)item; 143 - (void)panelChanged:(NewTabPageBarItem*)item;
142 // Update current controller and tab bar index. Used to call reload. 144 // Update current controller and tab bar index. Used to call reload.
143 - (void)updateCurrentController:(NewTabPageBarItem*)item 145 - (void)updateCurrentController:(NewTabPageBarItem*)item
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 ntpObserver:(id<NewTabPageControllerObserver>)ntpObserver 191 ntpObserver:(id<NewTabPageControllerObserver>)ntpObserver
190 browserState:(ios::ChromeBrowserState*)browserState 192 browserState:(ios::ChromeBrowserState*)browserState
191 colorCache:(NSMutableDictionary*)colorCache 193 colorCache:(NSMutableDictionary*)colorCache
192 webToolbarDelegate:(id<WebToolbarDelegate>)webToolbarDelegate 194 webToolbarDelegate:(id<WebToolbarDelegate>)webToolbarDelegate
193 tabModel:(TabModel*)tabModel 195 tabModel:(TabModel*)tabModel
194 parentViewController:(UIViewController*)parentViewController 196 parentViewController:(UIViewController*)parentViewController
195 dispatcher:(id)dispatcher { 197 dispatcher:(id)dispatcher {
196 self = [super initWithNibName:nil url:url]; 198 self = [super initWithNibName:nil url:url];
197 if (self) { 199 if (self) {
198 DCHECK(browserState); 200 DCHECK(browserState);
201 propertyReleaser_NewTabPageController_.Init(self,
202 [NewTabPageController class]);
199 browserState_ = browserState; 203 browserState_ = browserState;
200 loader_ = loader; 204 loader_ = loader;
201 newTabPageObserver_ = ntpObserver; 205 newTabPageObserver_ = ntpObserver;
202 parentViewController_ = parentViewController; 206 parentViewController_ = parentViewController;
203 dispatcher_ = dispatcher; 207 dispatcher_ = dispatcher;
204 focuser_.reset(focuser); 208 focuser_.reset(focuser);
205 webToolbarDelegate_.reset(webToolbarDelegate); 209 webToolbarDelegate_.reset(webToolbarDelegate);
206 tabModel_.reset([tabModel retain]); 210 tabModel_.reset([tabModel retain]);
207 dominantColorCache_ = colorCache; 211 dominantColorCache_ = colorCache;
208 self.title = l10n_util::GetNSString(IDS_NEW_TAB_TITLE); 212 self.title = l10n_util::GetNSString(IDS_NEW_TAB_TITLE);
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 // CRWNativeContent leaks, this will not be called. 310 // CRWNativeContent leaks, this will not be called.
307 // TODO(crbug.com/708319): Also call -removeFromParentViewController for 311 // TODO(crbug.com/708319): Also call -removeFromParentViewController for
308 // open tabs and incognito here. 312 // open tabs and incognito here.
309 [googleLandingController_ removeFromParentViewController]; 313 [googleLandingController_ removeFromParentViewController];
310 [bookmarkController_ removeFromParentViewController]; 314 [bookmarkController_ removeFromParentViewController];
311 315
312 [googleLandingController_ setDelegate:nil]; 316 [googleLandingController_ setDelegate:nil];
313 [bookmarkController_ setDelegate:nil]; 317 [bookmarkController_ setDelegate:nil];
314 [openTabsController_ setDelegate:nil]; 318 [openTabsController_ setDelegate:nil];
315 [[NSNotificationCenter defaultCenter] removeObserver:self]; 319 [[NSNotificationCenter defaultCenter] removeObserver:self];
316 base::mac::ReleaseProperties(self);
317 [super dealloc]; 320 [super dealloc];
318 } 321 }
319 322
320 #pragma mark - CRWNativeContent 323 #pragma mark - CRWNativeContent
321 324
322 - (void)willBeDismissed { 325 - (void)willBeDismissed {
323 // This methods is called by //web immediately before |self|'s view is removed 326 // This methods is called by //web immediately before |self|'s view is removed
324 // from the view hierarchy, making it an ideal spot to intiate view controller 327 // from the view hierarchy, making it an ideal spot to intiate view controller
325 // containment methods. 328 // containment methods.
326 // TODO(crbug.com/708319): Also call -willMoveToParentViewController:nil for 329 // TODO(crbug.com/708319): Also call -willMoveToParentViewController:nil for
(...skipping 410 matching lines...) Expand 10 before | Expand all | Expand 10 after
737 740
738 - (void)updateNtpBarShadowForPanelController: 741 - (void)updateNtpBarShadowForPanelController:
739 (id<NewTabPagePanelProtocol>)ntpPanelController { 742 (id<NewTabPagePanelProtocol>)ntpPanelController {
740 if (currentController_ != ntpPanelController) 743 if (currentController_ != ntpPanelController)
741 return; 744 return;
742 [self.ntpView.tabBar 745 [self.ntpView.tabBar
743 setShadowAlpha:[ntpPanelController alphaForBottomShadow]]; 746 setShadowAlpha:[ntpPanelController alphaForBottomShadow]];
744 } 747 }
745 748
746 @end 749 @end
OLDNEW
« no previous file with comments | « ios/chrome/browser/ui/ntp/new_tab_page_bar_item.mm ('k') | ios/chrome/browser/ui/ntp/new_tab_page_view.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698