Index: chrome/browser/ui/cocoa/autofill/autofill_suggestion_container.mm |
diff --git a/chrome/browser/ui/cocoa/autofill/autofill_suggestion_container.mm b/chrome/browser/ui/cocoa/autofill/autofill_suggestion_container.mm |
index e854cd2d1667e6a4645975d42ff2894b3586e154..c7877e0f390897f10126dd314748bc6a6cda2dec 100644 |
--- a/chrome/browser/ui/cocoa/autofill/autofill_suggestion_container.mm |
+++ b/chrome/browser/ui/cocoa/autofill/autofill_suggestion_container.mm |
@@ -35,10 +35,6 @@ const CGFloat kInfiniteSize = 1.0e6; |
// an NSTextField does. (Which UX feedback was based on) |
const CGFloat kLineFragmentPadding = 2.0; |
-// Padding added on top of the label so its first line looks centered with |
-// respect to the input field. |
-const CGFloat kLabelTopPadding = 5.0; |
- |
} |
// An attachment cell for a single icon - takes care of proper alignment of |
@@ -109,7 +105,7 @@ const CGFloat kLabelTopPadding = 5.0; |
base::scoped_nsobject<NSMutableParagraphStyle> paragraphStyle( |
[[NSMutableParagraphStyle alloc] init]); |
- [paragraphStyle setLineHeightMultiple:1.5]; |
+ [paragraphStyle setLineSpacing:0.5 * [[label_ font] pointSize]]; |
[label_ setDefaultParagraphStyle:paragraphStyle]; |
inputField_.reset([[AutofillTextField alloc] initWithFrame:NSZeroRect]); |
@@ -171,7 +167,6 @@ const CGFloat kLabelTopPadding = 5.0; |
- (NSSize)preferredSize { |
NSSize size = [label_ bounds].size; |
- size.height += kLabelTopPadding; |
// Final inputField_ sizing/spacing depends on a TODO(estade) in Views code. |
if (![inputField_ isHidden]) { |
@@ -195,19 +190,21 @@ const CGFloat kLabelTopPadding = 5.0; |
NSRect labelFrame = [label_ bounds]; |
labelFrame.origin.x = NSMinX(bounds); |
- labelFrame.origin.y = |
- NSMaxY(bounds) - kLabelTopPadding - NSHeight(labelFrame) - kTopPadding; |
+ labelFrame.origin.y = NSMaxY(bounds) - NSHeight(labelFrame) - kTopPadding; |
// Position input field - top is aligned to top of label field. |
if (![inputField_ isHidden]) { |
- NSRect inputfieldFrame = [inputField_ frame]; |
- inputfieldFrame.origin.x = NSMaxX(bounds) - NSWidth(inputfieldFrame); |
- inputfieldFrame.origin.y = |
- NSMaxY(labelFrame) + kLabelTopPadding - NSHeight(inputfieldFrame); |
- [inputField_ setFrameOrigin:inputfieldFrame.origin]; |
+ NSRect inputFieldFrame = [inputField_ frame]; |
+ inputFieldFrame.origin.x = NSMaxX(bounds) - NSWidth(inputFieldFrame); |
+ inputFieldFrame.origin.y = NSMaxY(labelFrame) - NSHeight(inputFieldFrame); |
+ [inputField_ setFrameOrigin:inputFieldFrame.origin]; |
+ |
+ // Vertically center the label with respect to the input field. |
+ labelFrame.origin.y -= |
+ roundf((NSHeight(inputFieldFrame) - NSHeight(labelFrame)) / 2.0); |
groby-ooo-7-16
2013/12/13 19:25:20
I'm still not sure this works - if the label is mu
Ilya Sherman
2013/12/14 00:03:06
Is there ever a case where the label is multi-line
groby-ooo-7-16
2013/12/14 00:08:40
Hm. Looking at the mocks, it seems the CVV challen
Ilya Sherman
2013/12/14 01:15:26
Alright, added the manual futz factor back in, but
|
// Due to fixed width, fields are guaranteed to not overlap. |
- DCHECK_LE(NSMaxX(labelFrame), NSMinX(inputfieldFrame)); |
+ DCHECK_LE(NSMaxX(labelFrame), NSMinX(inputFieldFrame)); |
} |
[spacer_ setFrame:spacerFrame]; |