#include "chrome/browser/ui/views/payments/payment_method_view_controller.h"
#include <memory>
#include <string>
#include <utility>
#include <vector>
#include "base/functional/bind.h"
#include "base/functional/callback.h"
#include "base/functional/callback_helpers.h"
#include "base/memory/weak_ptr.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/ui/views/chrome_typography.h"
#include "chrome/browser/ui/views/payments/payment_request_dialog_view.h"
#include "chrome/browser/ui/views/payments/payment_request_dialog_view_ids.h"
#include "chrome/browser/ui/views/payments/payment_request_row_view.h"
#include "chrome/browser/ui/views/payments/payment_request_views_util.h"
#include "components/payments/content/payment_app.h"
#include "components/payments/content/payment_request_state.h"
#include "components/payments/core/strings_util.h"
#include "components/strings/grit/components_strings.h"
#include "third_party/skia/include/core/SkColor.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/color/color_id.h"
#include "ui/gfx/geometry/insets.h"
#include "ui/gfx/paint_vector_icon.h"
#include "ui/views/border.h"
#include "ui/views/cascading_property.h"
#include "ui/views/controls/button/label_button.h"
#include "ui/views/controls/button/md_text_button.h"
#include "ui/views/layout/box_layout.h"
#include "ui/views/layout/fill_layout.h"
#include "ui/views/vector_icons.h"
namespace payments {
namespace {
class PaymentMethodListItem final : public PaymentRequestItemList::Item { … };
}
PaymentMethodViewController::PaymentMethodViewController(
base::WeakPtr<PaymentRequestSpec> spec,
base::WeakPtr<PaymentRequestState> state,
base::WeakPtr<PaymentRequestDialogView> dialog)
: … { … }
PaymentMethodViewController::~PaymentMethodViewController() { … }
std::u16string PaymentMethodViewController::GetSheetTitle() { … }
void PaymentMethodViewController::FillContentView(views::View* content_view) { … }
bool PaymentMethodViewController::ShouldShowPrimaryButton() { … }
bool PaymentMethodViewController::ShouldShowSecondaryButton() { … }
std::u16string PaymentMethodViewController::GetSecondaryButtonLabel() { … }
int PaymentMethodViewController::GetSecondaryButtonId() { … }
base::WeakPtr<PaymentRequestSheetController>
PaymentMethodViewController::GetWeakPtr() { … }
}