Index: chrome/browser/ui/cocoa/autofill/card_unmask_prompt_view_bridge.mm |
diff --git a/chrome/browser/ui/cocoa/autofill/card_unmask_prompt_view_bridge.mm b/chrome/browser/ui/cocoa/autofill/card_unmask_prompt_view_bridge.mm |
index f8d9a8170960b44b04e70d8a7be9532666e0182b..7a2c8e837be2d7d9156a482334507408fcbc1383 100644 |
--- a/chrome/browser/ui/cocoa/autofill/card_unmask_prompt_view_bridge.mm |
+++ b/chrome/browser/ui/cocoa/autofill/card_unmask_prompt_view_bridge.mm |
@@ -9,6 +9,7 @@ |
#include "chrome/browser/ui/autofill/autofill_dialog_types.h" |
#include "chrome/browser/ui/autofill/card_unmask_prompt_controller.h" |
#include "chrome/browser/ui/chrome_style.h" |
+#import "chrome/browser/ui/cocoa/autofill/autofill_textfield.h" |
#import "chrome/browser/ui/cocoa/autofill/autofill_tooltip_controller.h" |
#include "chrome/browser/ui/cocoa/autofill/card_unmask_prompt_view_bridge.h" |
#import "chrome/browser/ui/cocoa/constrained_window/constrained_window_button.h" |
@@ -129,7 +130,7 @@ void CardUnmaskPromptViewBridge::PerformClose() { |
base::scoped_nsobject<NSTextField> titleLabel_; |
base::scoped_nsobject<NSTextField> permanentErrorLabel_; |
base::scoped_nsobject<NSTextField> instructionsLabel_; |
- base::scoped_nsobject<NSTextField> cvcInput_; |
+ base::scoped_nsobject<AutofillTextField> cvcInput_; |
base::scoped_nsobject<NSPopUpButton> monthPopup_; |
base::scoped_nsobject<NSPopUpButton> yearPopup_; |
base::scoped_nsobject<NSButton> cancelButton_; |
@@ -213,6 +214,12 @@ void CardUnmaskPromptViewBridge::PerformClose() { |
SysUTF16ToNSString(text), kErrorFontStyle, NSNaturalTextAlignment, |
NSLineBreakByWordWrapping); |
[errorLabel_ setAttributedStringValue:attributedString]; |
+ |
+ // If there is more than one input showing, don't mark anything as |
+ // invalid since we don't know the location of the problem. |
+ if (!text.empty() && !bridge_->GetController()->ShouldRequestExpirationDate()) |
+ [cvcInput_ setValidityMessage:@"invalid"]; |
bondd
2015/04/01 18:13:14
AutofillTextField only checks this string for leng
groby-ooo-7-16
2015/04/02 22:32:56
I know :)
Check if this is used as a hover messag
|
+ |
[self performLayoutAndDisplay:YES]; |
} |
@@ -294,6 +301,10 @@ void CardUnmaskPromptViewBridge::PerformClose() { |
// Called when text in CVC input field changes. |
- (void)controlTextDidChange:(NSNotification*)notification { |
+ if (bridge_->GetController()->InputCvcIsValid( |
+ base::SysNSStringToUTF16([cvcInput_ stringValue]))) |
+ [cvcInput_ setValidityMessage:@""]; |
+ |
[self updateVerifyButtonEnabled]; |
} |
@@ -496,7 +507,7 @@ void CardUnmaskPromptViewBridge::PerformClose() { |
} |
// Add CVC text input. |
- cvcInput_.reset([[NSTextField alloc] initWithFrame:NSZeroRect]); |
+ cvcInput_.reset([[AutofillTextField alloc] initWithFrame:NSZeroRect]); |
[[cvcInput_ cell] |
setPlaceholderString:l10n_util::GetNSString( |
IDS_AUTOFILL_DIALOG_PLACEHOLDER_CVC)]; |