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

Side by Side Diff: chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm

Issue 313203004: Make ExtensionInstallPrompt::Prompt ref-counted (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Latest master for CQ Created 6 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 "chrome/browser/ui/cocoa/extensions/extension_install_view_controller.h" 5 #import "chrome/browser/ui/cocoa/extensions/extension_install_view_controller.h"
6 6
7 #include "base/auto_reset.h" 7 #include "base/auto_reset.h"
8 #include "base/i18n/rtl.h" 8 #include "base/i18n/rtl.h"
9 #include "base/mac/bundle_locations.h" 9 #include "base/mac/bundle_locations.h"
10 #include "base/mac/mac_util.h" 10 #include "base/mac/mac_util.h"
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
173 @synthesize okButton = okButton_; 173 @synthesize okButton = okButton_;
174 @synthesize outlineView = outlineView_; 174 @synthesize outlineView = outlineView_;
175 @synthesize warningsSeparator = warningsSeparator_; 175 @synthesize warningsSeparator = warningsSeparator_;
176 @synthesize ratingStars = ratingStars_; 176 @synthesize ratingStars = ratingStars_;
177 @synthesize ratingCountField = ratingCountField_; 177 @synthesize ratingCountField = ratingCountField_;
178 @synthesize userCountField = userCountField_; 178 @synthesize userCountField = userCountField_;
179 @synthesize storeLinkButton = storeLinkButton_; 179 @synthesize storeLinkButton = storeLinkButton_;
180 180
181 - (id)initWithNavigator:(content::PageNavigator*)navigator 181 - (id)initWithNavigator:(content::PageNavigator*)navigator
182 delegate:(ExtensionInstallPrompt::Delegate*)delegate 182 delegate:(ExtensionInstallPrompt::Delegate*)delegate
183 prompt:(const ExtensionInstallPrompt::Prompt&)prompt { 183 prompt:(scoped_refptr<ExtensionInstallPrompt::Prompt>)prompt {
184 // We use a different XIB in the case of bundle installs, installs with 184 // We use a different XIB in the case of bundle installs, installs with
185 // webstore data, or no permission warnings. These are laid out nicely for 185 // webstore data, or no permission warnings. These are laid out nicely for
186 // the data they display. 186 // the data they display.
187 NSString* nibName = nil; 187 NSString* nibName = nil;
188 if (prompt.type() == ExtensionInstallPrompt::BUNDLE_INSTALL_PROMPT) { 188 if (prompt->type() == ExtensionInstallPrompt::BUNDLE_INSTALL_PROMPT) {
189 nibName = @"ExtensionInstallPromptBundle"; 189 nibName = @"ExtensionInstallPromptBundle";
190 } else if (prompt.has_webstore_data()) { 190 } else if (prompt->has_webstore_data()) {
191 nibName = @"ExtensionInstallPromptWebstoreData"; 191 nibName = @"ExtensionInstallPromptWebstoreData";
192 } else if (!prompt.ShouldShowPermissions() && 192 } else if (!prompt->ShouldShowPermissions() &&
193 prompt.GetRetainedFileCount() == 0) { 193 prompt->GetRetainedFileCount() == 0) {
194 nibName = @"ExtensionInstallPromptNoWarnings"; 194 nibName = @"ExtensionInstallPromptNoWarnings";
195 } else { 195 } else {
196 nibName = @"ExtensionInstallPrompt"; 196 nibName = @"ExtensionInstallPrompt";
197 } 197 }
198 198
199 if ((self = [super initWithNibName:nibName 199 if ((self = [super initWithNibName:nibName
200 bundle:base::mac::FrameworkBundle()])) { 200 bundle:base::mac::FrameworkBundle()])) {
201 navigator_ = navigator; 201 navigator_ = navigator;
202 delegate_ = delegate; 202 delegate_ = delegate;
203 prompt_.reset(new ExtensionInstallPrompt::Prompt(prompt)); 203 prompt_ = prompt;
204 warnings_.reset([[self buildWarnings:prompt] retain]); 204 warnings_.reset([[self buildWarnings:*prompt] retain]);
205 } 205 }
206 return self; 206 return self;
207 } 207 }
208 208
209 - (IBAction)storeLinkClicked:(id)sender { 209 - (IBAction)storeLinkClicked:(id)sender {
210 GURL store_url(extension_urls::GetWebstoreItemDetailURLPrefix() + 210 GURL store_url(extension_urls::GetWebstoreItemDetailURLPrefix() +
211 prompt_->extension()->id()); 211 prompt_->extension()->id());
212 navigator_->OpenURL(OpenURLParams( 212 navigator_->OpenURL(OpenURLParams(
213 store_url, Referrer(), NEW_FOREGROUND_TAB, content::PAGE_TRANSITION_LINK, 213 store_url, Referrer(), NEW_FOREGROUND_TAB, content::PAGE_TRANSITION_LINK,
214 false)); 214 false));
(...skipping 519 matching lines...) Expand 10 before | Expand all | Expand 10 after
734 } 734 }
735 735
736 - (void)accessibilityPerformAction:(NSString*)action { 736 - (void)accessibilityPerformAction:(NSString*)action {
737 if ([action isEqualToString:NSAccessibilityPressAction]) 737 if ([action isEqualToString:NSAccessibilityPressAction])
738 [self handleLinkClicked]; 738 [self handleLinkClicked];
739 else 739 else
740 [super accessibilityPerformAction:action]; 740 [super accessibilityPerformAction:action];
741 } 741 }
742 742
743 @end 743 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698