OLD | NEW |
1 // Copyright (c) 2015 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2015 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 #include "base/bind.h" | 5 #include "base/bind.h" |
6 #include "base/message_loop/message_loop.h" | 6 #include "base/message_loop/message_loop.h" |
7 #include "base/strings/sys_string_conversions.h" | 7 #include "base/strings/sys_string_conversions.h" |
8 #include "chrome/browser/ui/autofill/autofill_dialog_models.h" | 8 #include "chrome/browser/ui/autofill/autofill_dialog_models.h" |
9 #include "chrome/browser/ui/autofill/autofill_dialog_types.h" | |
10 #include "chrome/browser/ui/chrome_style.h" | 9 #include "chrome/browser/ui/chrome_style.h" |
11 #import "chrome/browser/ui/cocoa/autofill/autofill_pop_up_button.h" | 10 #import "chrome/browser/ui/cocoa/autofill/autofill_pop_up_button.h" |
12 #import "chrome/browser/ui/cocoa/autofill/autofill_textfield.h" | 11 #import "chrome/browser/ui/cocoa/autofill/autofill_textfield.h" |
13 #import "chrome/browser/ui/cocoa/autofill/autofill_tooltip_controller.h" | 12 #import "chrome/browser/ui/cocoa/autofill/autofill_tooltip_controller.h" |
14 #include "chrome/browser/ui/cocoa/autofill/card_unmask_prompt_view_bridge.h" | 13 #include "chrome/browser/ui/cocoa/autofill/card_unmask_prompt_view_bridge.h" |
15 #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_button.h" | 14 #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_button.h" |
16 #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_control_u
tils.h" | 15 #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_control_u
tils.h" |
17 #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_custom_sh
eet.h" | 16 #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_custom_sh
eet.h" |
18 #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_custom_wi
ndow.h" | 17 #import "chrome/browser/ui/cocoa/constrained_window/constrained_window_custom_wi
ndow.h" |
19 #import "chrome/browser/ui/cocoa/key_equivalent_constants.h" | 18 #import "chrome/browser/ui/cocoa/key_equivalent_constants.h" |
20 #import "chrome/browser/ui/cocoa/l10n_util.h" | 19 #import "chrome/browser/ui/cocoa/l10n_util.h" |
21 #import "chrome/browser/ui/cocoa/spinner_view.h" | 20 #import "chrome/browser/ui/cocoa/spinner_view.h" |
22 #include "chrome/browser/ui/cocoa/themed_window.h" | 21 #include "chrome/browser/ui/cocoa/themed_window.h" |
23 #include "components/autofill/core/browser/ui/card_unmask_prompt_controller.h" | 22 #include "components/autofill/core/browser/ui/card_unmask_prompt_controller.h" |
24 #include "content/public/browser/web_contents.h" | 23 #include "content/public/browser/web_contents.h" |
25 #include "grit/components_scaled_resources.h" | 24 #include "grit/components_scaled_resources.h" |
26 #include "grit/components_strings.h" | 25 #include "grit/components_strings.h" |
27 #include "grit/generated_resources.h" | 26 #include "grit/generated_resources.h" |
28 #include "skia/ext/skia_utils_mac.h" | 27 #include "skia/ext/skia_utils_mac.h" |
29 #import "ui/base/cocoa/controls/hyperlink_button_cell.h" | 28 #import "ui/base/cocoa/controls/hyperlink_button_cell.h" |
30 #include "ui/base/cocoa/window_size_constants.h" | 29 #include "ui/base/cocoa/window_size_constants.h" |
31 #include "ui/base/l10n/l10n_util.h" | 30 #include "ui/base/l10n/l10n_util.h" |
| 31 #include "ui/gfx/color_palette.h" |
32 #include "ui/native_theme/native_theme_mac.h" | 32 #include "ui/native_theme/native_theme_mac.h" |
33 | 33 |
34 namespace { | 34 namespace { |
35 | 35 |
36 const CGFloat kButtonGap = 6.0f; | 36 const CGFloat kButtonGap = 6.0f; |
37 const CGFloat kButtonsToRetriableErrorGap = 12.0f; | 37 const CGFloat kButtonsToRetriableErrorGap = 12.0f; |
38 const CGFloat kCvcInputWidth = 64.0f; | 38 const CGFloat kCvcInputWidth = 64.0f; |
39 const CGFloat kCvcInputToImageGap = 8.0f; | 39 const CGFloat kCvcInputToImageGap = 8.0f; |
40 const CGFloat kDialogContentMinWidth = 210.0f; | 40 const CGFloat kDialogContentMinWidth = 210.0f; |
41 const CGFloat kInputRowToInstructionsGap = 16.0f; | 41 const CGFloat kInputRowToInstructionsGap = 16.0f; |
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
297 [inputRowView_ addSubview:newCardButton_]; | 297 [inputRowView_ addSubview:newCardButton_]; |
298 } | 298 } |
299 | 299 |
300 [self performLayoutAndDisplay:YES]; | 300 [self performLayoutAndDisplay:YES]; |
301 } | 301 } |
302 | 302 |
303 - (void)setPermanentErrorMessage:(const base::string16&)text { | 303 - (void)setPermanentErrorMessage:(const base::string16&)text { |
304 if (!text.empty()) { | 304 if (!text.empty()) { |
305 if (!permanentErrorBox_) { | 305 if (!permanentErrorBox_) { |
306 permanentErrorBox_ = [CardUnmaskPromptViewCocoa createPlainBox]; | 306 permanentErrorBox_ = [CardUnmaskPromptViewCocoa createPlainBox]; |
307 [permanentErrorBox_ setFillColor:skia::SkColorToCalibratedNSColor( | 307 [permanentErrorBox_ |
308 autofill::kWarningColor)]; | 308 setFillColor:skia::SkColorToCalibratedNSColor(gfx::kGoogleRed700)]; |
309 [permanentErrorBox_ | 309 [permanentErrorBox_ |
310 setContentViewMargins:NSMakeSize(kPermanentErrorHorizontalPadding, | 310 setContentViewMargins:NSMakeSize(kPermanentErrorHorizontalPadding, |
311 kPermanentErrorVerticalPadding)]; | 311 kPermanentErrorVerticalPadding)]; |
312 | 312 |
313 permanentErrorLabel_.reset([constrained_window::CreateLabel() retain]); | 313 permanentErrorLabel_.reset([constrained_window::CreateLabel() retain]); |
314 [permanentErrorLabel_ setAutoresizingMask:NSViewWidthSizable]; | 314 [permanentErrorLabel_ setAutoresizingMask:NSViewWidthSizable]; |
315 [permanentErrorLabel_ setTextColor:skia::SkColorToCalibratedNSColor( | 315 [permanentErrorLabel_ setTextColor:skia::SkColorToCalibratedNSColor( |
316 kPermanentErrorTextColor)]; | 316 kPermanentErrorTextColor)]; |
317 | 317 |
318 [permanentErrorBox_ addSubview:permanentErrorLabel_]; | 318 [permanentErrorBox_ addSubview:permanentErrorLabel_]; |
(...skipping 386 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
705 NSImage* cvcImage = | 705 NSImage* cvcImage = |
706 rb.GetNativeImageNamed(controller->GetCvcImageRid()).ToNSImage(); | 706 rb.GetNativeImageNamed(controller->GetCvcImageRid()).ToNSImage(); |
707 cvcImageView_.reset([[NSImageView alloc] initWithFrame:NSZeroRect]); | 707 cvcImageView_.reset([[NSImageView alloc] initWithFrame:NSZeroRect]); |
708 [cvcImageView_ setImage:cvcImage]; | 708 [cvcImageView_ setImage:cvcImage]; |
709 [cvcImageView_ setFrameSize:[cvcImage size]]; | 709 [cvcImageView_ setFrameSize:[cvcImage size]]; |
710 [inputRowView_ addSubview:cvcImageView_]; | 710 [inputRowView_ addSubview:cvcImageView_]; |
711 | 711 |
712 // Add error message label. | 712 // Add error message label. |
713 errorLabel_.reset([constrained_window::CreateLabel() retain]); | 713 errorLabel_.reset([constrained_window::CreateLabel() retain]); |
714 [errorLabel_ | 714 [errorLabel_ |
715 setTextColor:skia::SkColorToCalibratedNSColor(autofill::kWarningColor)]; | 715 setTextColor:skia::SkColorToCalibratedNSColor(gfx::kGoogleRed700)]; |
716 [mainView addSubview:errorLabel_]; | 716 [mainView addSubview:errorLabel_]; |
717 | 717 |
718 // Add cancel button. | 718 // Add cancel button. |
719 cancelButton_.reset( | 719 cancelButton_.reset( |
720 [[ConstrainedWindowButton alloc] initWithFrame:NSZeroRect]); | 720 [[ConstrainedWindowButton alloc] initWithFrame:NSZeroRect]); |
721 [cancelButton_ setTitle:l10n_util::GetNSStringWithFixup(IDS_CANCEL)]; | 721 [cancelButton_ setTitle:l10n_util::GetNSStringWithFixup(IDS_CANCEL)]; |
722 [cancelButton_ setKeyEquivalent:kKeyEquivalentEscape]; | 722 [cancelButton_ setKeyEquivalent:kKeyEquivalentEscape]; |
723 [cancelButton_ setTarget:self]; | 723 [cancelButton_ setTarget:self]; |
724 [cancelButton_ setAction:@selector(onCancel:)]; | 724 [cancelButton_ setAction:@selector(onCancel:)]; |
725 [cancelButton_ sizeToFit]; | 725 [cancelButton_ sizeToFit]; |
726 [mainView addSubview:cancelButton_]; | 726 [mainView addSubview:cancelButton_]; |
727 | 727 |
728 // Add verify button. | 728 // Add verify button. |
729 verifyButton_.reset( | 729 verifyButton_.reset( |
730 [[ConstrainedWindowButton alloc] initWithFrame:NSZeroRect]); | 730 [[ConstrainedWindowButton alloc] initWithFrame:NSZeroRect]); |
731 [verifyButton_ setTitle:l10n_util::FixUpWindowsStyleLabel( | 731 [verifyButton_ setTitle:l10n_util::FixUpWindowsStyleLabel( |
732 controller->GetOkButtonLabel())]; | 732 controller->GetOkButtonLabel())]; |
733 [verifyButton_ setKeyEquivalent:kKeyEquivalentReturn]; | 733 [verifyButton_ setKeyEquivalent:kKeyEquivalentReturn]; |
734 [verifyButton_ setTarget:self]; | 734 [verifyButton_ setTarget:self]; |
735 [verifyButton_ setAction:@selector(onVerify:)]; | 735 [verifyButton_ setAction:@selector(onVerify:)]; |
736 [verifyButton_ sizeToFit]; | 736 [verifyButton_ sizeToFit]; |
737 [self updateVerifyButtonEnabled]; | 737 [self updateVerifyButtonEnabled]; |
738 [mainView addSubview:verifyButton_]; | 738 [mainView addSubview:verifyButton_]; |
739 | 739 |
740 [self setView:mainView]; | 740 [self setView:mainView]; |
741 [self performLayoutAndDisplay:NO]; | 741 [self performLayoutAndDisplay:NO]; |
742 } | 742 } |
743 | 743 |
744 @end | 744 @end |
OLD | NEW |