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

Side by Side Diff: chrome/browser/ui/cocoa/intents/web_intent_picker_view_controller.mm

Issue 11077006: Correct padding and focus ring for frameless constrained window dialog (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Address sail@ comment for mac usage of constants Created 8 years, 2 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 (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/intents/web_intent_picker_view_controller.h" 5 #import "chrome/browser/ui/cocoa/intents/web_intent_picker_view_controller.h"
6 6
7 #include "base/sys_string_conversions.h" 7 #include "base/sys_string_conversions.h"
8 #import "chrome/browser/ui/cocoa/event_utils.h" 8 #import "chrome/browser/ui/cocoa/event_utils.h"
9 #import "chrome/browser/ui/cocoa/flipped_view.h" 9 #import "chrome/browser/ui/cocoa/flipped_view.h"
10 #import "chrome/browser/ui/cocoa/hover_close_button.h" 10 #import "chrome/browser/ui/cocoa/hover_close_button.h"
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 NSSize minSize = 139 NSSize minSize =
140 [viewController minimumSizeForInnerWidth:NSWidth(innerFrame)]; 140 [viewController minimumSizeForInnerWidth:NSWidth(innerFrame)];
141 innerFrame.size.width = std::max(minSize.width, NSWidth(innerFrame)); 141 innerFrame.size.width = std::max(minSize.width, NSWidth(innerFrame));
142 innerFrame.size.width = std::min( 142 innerFrame.size.width = std::min(
143 static_cast<CGFloat>(WebIntentPicker::kWindowMaxWidth), 143 static_cast<CGFloat>(WebIntentPicker::kWindowMaxWidth),
144 NSWidth(innerFrame)); 144 NSWidth(innerFrame));
145 innerFrame.size.height = std::max(minSize.height, NSHeight(innerFrame)); 145 innerFrame.size.height = std::max(minSize.height, NSHeight(innerFrame));
146 146
147 NSRect bounds = NSInsetRect(innerFrame, 147 NSRect bounds = NSInsetRect(innerFrame,
148 -ConstrainedWindow::kHorizontalPadding, 148 -ConstrainedWindow::kHorizontalPadding,
149 -ConstrainedWindow::kVerticalPadding); 149 0);
150 bounds.origin.y -= ConstrainedWindow::kClientTopPadding;
151 bounds.size.height = NSHeight(innerFrame) +
152 ConstrainedWindow::kClientTopPadding +
153 ConstrainedWindow::kClientBottomPadding;
150 154
151 [[viewController view] setFrame:bounds]; 155 [[viewController view] setFrame:bounds];
152 [viewController layoutSubviewsWithinFrame:innerFrame]; 156 [viewController layoutSubviewsWithinFrame:innerFrame];
153 157
154 NSRect closeFrame; 158 NSRect closeFrame;
155 closeFrame.size.width = ConstrainedWindow::GetCloseButtonSize(); 159 closeFrame.size.width = ConstrainedWindow::GetCloseButtonSize();
156 closeFrame.size.height = ConstrainedWindow::GetCloseButtonSize(); 160 closeFrame.size.height = ConstrainedWindow::GetCloseButtonSize();
157 closeFrame.origin.x = NSMaxX(innerFrame) - NSWidth(closeFrame); 161 closeFrame.origin.x = NSMaxX(innerFrame) - NSWidth(closeFrame);
158 closeFrame.origin.y = NSMinY(innerFrame); 162 closeFrame.origin.y = NSMinY(innerFrame);
159 [closeButton_ setFrame:closeFrame]; 163 [closeButton_ setFrame:closeFrame];
160 164
161 [[self view] setFrame:bounds]; 165 [[self view] setFrame:bounds];
162 } 166 }
163 167
164 - (NSRect)minimumInnerFrame { 168 - (NSRect)minimumInnerFrame {
165 NSRect bounds = NSMakeRect(0, 0, WebIntentPicker::kWindowMinWidth, 169 NSRect bounds = NSMakeRect(0, 0, WebIntentPicker::kWindowMinWidth,
166 WebIntentPicker::kWindowMinHeight); 170 WebIntentPicker::kWindowMinHeight);
167 return NSInsetRect(bounds, 171 bounds = NSInsetRect(bounds,
168 ConstrainedWindow::kHorizontalPadding, 172 ConstrainedWindow::kHorizontalPadding,
169 ConstrainedWindow::kVerticalPadding); 173 0);
174 bounds.origin.y += ConstrainedWindow::kClientTopPadding;
175 bounds.size.height = bounds.size.height -
176 ConstrainedWindow::kClientTopPadding -
177 ConstrainedWindow::kClientBottomPadding;
178 return bounds;
170 } 179 }
171 180
172 - (NSViewController<WebIntentViewController>*)currentViewController { 181 - (NSViewController<WebIntentViewController>*)currentViewController {
173 switch (state_) { 182 switch (state_) {
174 case PICKER_STATE_WAITING: 183 case PICKER_STATE_WAITING:
175 return progressViewController_; 184 return progressViewController_;
176 case PICKER_STATE_NO_SERVICE: 185 case PICKER_STATE_NO_SERVICE:
177 return messageViewController_; 186 return messageViewController_;
178 case PICKER_STATE_CHOOSE_SERVICE: 187 case PICKER_STATE_CHOOSE_SERVICE:
179 return chooseServiceViewController_; 188 return chooseServiceViewController_;
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
315 picker_->delegate()->OnExtensionLinkClicked(service.id, disposition); 324 picker_->delegate()->OnExtensionLinkClicked(service.id, disposition);
316 } 325 }
317 326
318 - (void)onShowMoreServices:(id)sender { 327 - (void)onShowMoreServices:(id)sender {
319 WindowOpenDisposition disposition = 328 WindowOpenDisposition disposition =
320 event_utils::WindowOpenDispositionFromNSEvent([NSApp currentEvent]); 329 event_utils::WindowOpenDispositionFromNSEvent([NSApp currentEvent]);
321 picker_->delegate()->OnSuggestionsLinkClicked(disposition); 330 picker_->delegate()->OnSuggestionsLinkClicked(disposition);
322 } 331 }
323 332
324 @end 333 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698