OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 "chrome/browser/ui/views/payments/payment_request_sheet_controller.h" | 5 #include "chrome/browser/ui/views/payments/payment_request_sheet_controller.h" |
6 | 6 |
7 #include "chrome/browser/ui/views/payments/payment_request_dialog_view.h" | 7 #include "chrome/browser/ui/views/payments/payment_request_dialog_view.h" |
8 #include "chrome/browser/ui/views/payments/payment_request_views_util.h" | 8 #include "chrome/browser/ui/views/payments/payment_request_views_util.h" |
9 #include "components/strings/grit/components_strings.h" | 9 #include "components/strings/grit/components_strings.h" |
10 #include "ui/base/l10n/l10n_util.h" | 10 #include "ui/base/l10n/l10n_util.h" |
(...skipping 10 matching lines...) Expand all Loading... |
21 : request_(request), dialog_(dialog) { | 21 : request_(request), dialog_(dialog) { |
22 DCHECK(request_); | 22 DCHECK(request_); |
23 DCHECK(dialog_); | 23 DCHECK(dialog_); |
24 } | 24 } |
25 | 25 |
26 std::unique_ptr<views::Button> | 26 std::unique_ptr<views::Button> |
27 PaymentRequestSheetController::CreatePrimaryButton() { | 27 PaymentRequestSheetController::CreatePrimaryButton() { |
28 return nullptr; | 28 return nullptr; |
29 } | 29 } |
30 | 30 |
| 31 std::unique_ptr<views::View> PaymentRequestSheetController::CreateExtraView() { |
| 32 return nullptr; |
| 33 } |
| 34 |
31 void PaymentRequestSheetController::ButtonPressed( | 35 void PaymentRequestSheetController::ButtonPressed( |
32 views::Button* sender, const ui::Event& event) { | 36 views::Button* sender, const ui::Event& event) { |
33 switch (static_cast<PaymentRequestCommonTags>(sender->tag())) { | 37 switch (static_cast<PaymentRequestCommonTags>(sender->tag())) { |
34 case PaymentRequestCommonTags::CLOSE_BUTTON_TAG: | 38 case PaymentRequestCommonTags::CLOSE_BUTTON_TAG: |
35 dialog()->CloseDialog(); | 39 dialog()->CloseDialog(); |
36 break; | 40 break; |
37 case PaymentRequestCommonTags::BACK_BUTTON_TAG: | 41 case PaymentRequestCommonTags::BACK_BUTTON_TAG: |
38 dialog()->GoBack(); | 42 dialog()->GoBack(); |
39 break; | 43 break; |
40 case PaymentRequestCommonTags::PAYMENT_REQUEST_COMMON_TAG_MAX: | 44 case PaymentRequestCommonTags::PAYMENT_REQUEST_COMMON_TAG_MAX: |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 container->SetLayoutManager(layout); | 89 container->SetLayoutManager(layout); |
86 | 90 |
87 views::ColumnSet* columns = layout->AddColumnSet(0); | 91 views::ColumnSet* columns = layout->AddColumnSet(0); |
88 columns->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER, | 92 columns->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER, |
89 0, views::GridLayout::USE_PREF, 0, 0); | 93 0, views::GridLayout::USE_PREF, 0, 0); |
90 columns->AddPaddingColumn(1, 0); | 94 columns->AddPaddingColumn(1, 0); |
91 columns->AddColumn(views::GridLayout::TRAILING, views::GridLayout::CENTER, | 95 columns->AddColumn(views::GridLayout::TRAILING, views::GridLayout::CENTER, |
92 0, views::GridLayout::USE_PREF, 0, 0); | 96 0, views::GridLayout::USE_PREF, 0, 0); |
93 | 97 |
94 layout->StartRow(0, 0); | 98 layout->StartRow(0, 0); |
95 std::unique_ptr<views::View> leading_buttons_container = | 99 std::unique_ptr<views::View> extra_view = CreateExtraView(); |
96 base::MakeUnique<views::View>(); | 100 if (extra_view) |
97 | 101 layout->AddView(extra_view.release()); |
98 // TODO(anthonyvd): Add the other buttons that can eventually go into this | 102 else |
99 // footer. | 103 layout->SkipColumns(1); |
100 | |
101 layout->AddView(leading_buttons_container.release()); | |
102 | 104 |
103 std::unique_ptr<views::View> trailing_buttons_container = | 105 std::unique_ptr<views::View> trailing_buttons_container = |
104 base::MakeUnique<views::View>(); | 106 base::MakeUnique<views::View>(); |
105 | 107 |
106 constexpr int kButtonSpacing = 10; | |
107 trailing_buttons_container->SetLayoutManager(new views::BoxLayout( | 108 trailing_buttons_container->SetLayoutManager(new views::BoxLayout( |
108 views::BoxLayout::kHorizontal, | 109 views::BoxLayout::kHorizontal, |
109 kPaymentRequestRowHorizontalInsets, | 110 kPaymentRequestRowHorizontalInsets, |
110 kPaymentRequestRowVerticalInsets, | 111 kPaymentRequestRowVerticalInsets, |
111 kButtonSpacing)); | 112 kPaymentRequestButtonSpacing)); |
112 | 113 |
113 std::unique_ptr<views::Button> primary_button = CreatePrimaryButton(); | 114 std::unique_ptr<views::Button> primary_button = CreatePrimaryButton(); |
114 if (primary_button) | 115 if (primary_button) |
115 trailing_buttons_container->AddChildView(primary_button.release()); | 116 trailing_buttons_container->AddChildView(primary_button.release()); |
116 | 117 |
117 views::LabelButton* button = views::MdTextButton::CreateSecondaryUiButton( | 118 views::LabelButton* button = views::MdTextButton::CreateSecondaryUiButton( |
118 this, l10n_util::GetStringUTF16(IDS_CANCEL)); | 119 this, l10n_util::GetStringUTF16(IDS_CANCEL)); |
119 button->set_tag(static_cast<int>(PaymentRequestCommonTags::CLOSE_BUTTON_TAG)); | 120 button->set_tag(static_cast<int>(PaymentRequestCommonTags::CLOSE_BUTTON_TAG)); |
120 trailing_buttons_container->AddChildView(button); | 121 trailing_buttons_container->AddChildView(button); |
121 | 122 |
122 layout->AddView(trailing_buttons_container.release()); | 123 layout->AddView(trailing_buttons_container.release()); |
123 | 124 |
124 return container; | 125 return container; |
125 } | 126 } |
126 | 127 |
127 } // namespace payments | 128 } // namespace payments |
OLD | NEW |