Index: chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm |
diff --git a/chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm b/chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm |
index 8969b4a8602adfc5cf8f270adc4ac3f6a09eddbf..5eb4bbc0a560ef09a4756745a5f4b9dc713adf62 100644 |
--- a/chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm |
+++ b/chrome/browser/ui/cocoa/extensions/extension_install_view_controller.mm |
@@ -186,8 +186,15 @@ void DrawBulletInFrame(NSRect frame) { |
- (void)awakeFromNib { |
// Set control labels. |
[titleField_ setStringValue:base::SysUTF16ToNSString(prompt_->GetHeading())]; |
- [okButton_ setTitle:base::SysUTF16ToNSString( |
- prompt_->GetAcceptButtonLabel())]; |
+ NSRect okButtonRect; |
+ if (prompt_->HasAcceptButtonLabel()) { |
+ [okButton_ setTitle:base::SysUTF16ToNSString( |
+ prompt_->GetAcceptButtonLabel())]; |
+ } else { |
+ [okButton_ removeFromSuperview]; |
+ okButtonRect = [okButton_ frame]; |
+ okButton_ = nil; |
+ } |
[cancelButton_ setTitle:prompt_->HasAbortButtonLabel() ? |
base::SysUTF16ToNSString(prompt_->GetAbortButtonLabel()) : |
l10n_util::GetNSString(IDS_CANCEL)]; |
@@ -218,11 +225,19 @@ void DrawBulletInFrame(NSRect frame) { |
// Resize |okButton_| and |cancelButton_| to fit the button labels, but keep |
// them right-aligned. |
- NSSize buttonDelta = [GTMUILocalizerAndLayoutTweaker sizeToFitView:okButton_]; |
- if (buttonDelta.width) { |
- [okButton_ setFrame:NSOffsetRect([okButton_ frame], -buttonDelta.width, 0)]; |
- [cancelButton_ setFrame:NSOffsetRect([cancelButton_ frame], |
- -buttonDelta.width, 0)]; |
+ NSSize buttonDelta; |
+ if (okButton_) { |
+ buttonDelta = [GTMUILocalizerAndLayoutTweaker sizeToFitView:okButton_]; |
+ if (buttonDelta.width) { |
+ [okButton_ setFrame:NSOffsetRect([okButton_ frame], |
+ -buttonDelta.width, 0)]; |
+ [cancelButton_ setFrame:NSOffsetRect([cancelButton_ frame], |
+ -buttonDelta.width, 0)]; |
+ } |
+ } else { |
+ // To make |cancelButton_| right-aligned in the absence of |okButton_|, |
+ // update |cancelButton_|'s rect with that of |okButton_|. |
+ [cancelButton_ setFrame:okButtonRect]; |
sail
2013/02/13 23:56:37
I don't think this will work. For example, if the
Joe Thomas
2013/02/14 02:41:59
Done.
|
} |
buttonDelta = [GTMUILocalizerAndLayoutTweaker sizeToFitView:cancelButton_]; |
if (buttonDelta.width) { |