| Index: chrome/browser/ui/views/payments/payment_sheet_view_controller.cc
|
| diff --git a/chrome/browser/ui/views/payments/payment_sheet_view_controller.cc b/chrome/browser/ui/views/payments/payment_sheet_view_controller.cc
|
| index dfcf2a696a1f031781b80711c4e31c99344e6cf4..277d78110dce24533b42f9599debd6accd676249 100644
|
| --- a/chrome/browser/ui/views/payments/payment_sheet_view_controller.cc
|
| +++ b/chrome/browser/ui/views/payments/payment_sheet_view_controller.cc
|
| @@ -32,7 +32,6 @@
|
| #include "ui/gfx/font.h"
|
| #include "ui/gfx/paint_vector_icon.h"
|
| #include "ui/gfx/range/range.h"
|
| -#include "ui/views/controls/button/label_button.h"
|
| #include "ui/views/controls/button/md_text_button.h"
|
| #include "ui/views/controls/image_view.h"
|
| #include "ui/views/controls/label.h"
|
| @@ -54,6 +53,7 @@ enum class PaymentSheetViewControllerTags {
|
| SHOW_SHIPPING_BUTTON,
|
| SHOW_PAYMENT_METHOD_BUTTON,
|
| SHOW_CONTACT_INFO_BUTTON,
|
| + PAY_BUTTON
|
| };
|
|
|
| int ComputeWidestNameColumnViewWidth() {
|
| @@ -167,6 +167,7 @@ PaymentSheetViewController::PaymentSheetViewController(
|
| PaymentRequest* request,
|
| PaymentRequestDialogView* dialog)
|
| : PaymentRequestSheetController(request, dialog),
|
| + pay_button_(nullptr),
|
| widest_name_column_view_width_(ComputeWidestNameColumnViewWidth()) {}
|
|
|
| PaymentSheetViewController::~PaymentSheetViewController() {}
|
| @@ -197,6 +198,18 @@ std::unique_ptr<views::View> PaymentSheetViewController::CreateView() {
|
| std::move(content_view));
|
| }
|
|
|
| +std::unique_ptr<views::Button>
|
| +PaymentSheetViewController::CreatePrimaryButton() {
|
| + std::unique_ptr<views::Button> button(
|
| + views::MdTextButton::CreateSecondaryUiBlueButton(
|
| + this, l10n_util::GetStringUTF16(IDS_PAYMENTS_PAY_BUTTON)));
|
| + button->set_tag(static_cast<int>(PaymentSheetViewControllerTags::PAY_BUTTON));
|
| + button->set_id(static_cast<int>(DialogViewID::PAYMENT_SHEET_PAY_BUTTON));
|
| + pay_button_ = button.get();
|
| + UpdatePayButtonState(request()->is_ready_to_pay());
|
| + return button;
|
| +}
|
| +
|
| void PaymentSheetViewController::ButtonPressed(
|
| views::Button* sender, const ui::Event& event) {
|
| switch (sender->tag()) {
|
| @@ -219,12 +232,20 @@ void PaymentSheetViewController::ButtonPressed(
|
| // TODO(tmartino): Transition to contact info page once it exists.
|
| break;
|
|
|
| + case static_cast<int>(PaymentSheetViewControllerTags::PAY_BUTTON):
|
| + request()->Pay();
|
| + break;
|
| +
|
| default:
|
| PaymentRequestSheetController::ButtonPressed(sender, event);
|
| break;
|
| }
|
| }
|
|
|
| +void PaymentSheetViewController::UpdatePayButtonState(bool enabled) {
|
| + pay_button_->SetEnabled(enabled);
|
| +}
|
| +
|
| std::unique_ptr<views::View>
|
| PaymentSheetViewController::CreateOrderSummarySectionContent() {
|
| CurrencyFormatter* formatter = request()->GetOrCreateCurrencyFormatter(
|
|
|