#include "chrome/browser/ui/views/payments/payment_request_item_list.h"
#include <algorithm>
#include <utility>
#include "base/functional/bind.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_views_util.h"
#include "components/payments/content/payment_request_state.h"
#include "components/strings/grit/components_strings.h"
#include "components/vector_icons/vector_icons.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/gfx/color_utils.h"
#include "ui/gfx/geometry/insets.h"
#include "ui/gfx/paint_vector_icon.h"
#include "ui/views/accessibility/view_accessibility.h"
#include "ui/views/animation/ink_drop.h"
#include "ui/views/controls/button/button.h"
#include "ui/views/controls/button/image_button.h"
#include "ui/views/controls/button/image_button_factory.h"
#include "ui/views/controls/image_view.h"
#include "ui/views/layout/box_layout.h"
#include "ui/views/vector_icons.h"
#include "ui/views/view.h"
namespace payments {
namespace {
constexpr SkColor kCheckmarkColor = …;
constexpr auto kRowInsets = …;
constexpr int kExtraViewSpacing = …;
constexpr int kEditIconSize = …;
}
PaymentRequestItemList::Item::Item(base::WeakPtr<PaymentRequestSpec> spec,
base::WeakPtr<PaymentRequestState> state,
PaymentRequestItemList* list,
bool selected,
bool clickable,
bool show_edit_button)
: … { … }
PaymentRequestItemList::Item::~Item() { … }
void PaymentRequestItemList::Item::Init() { … }
void PaymentRequestItemList::Item::SetSelected(bool selected, bool notify) { … }
std::unique_ptr<views::ImageView> PaymentRequestItemList::Item::CreateCheckmark(
bool selected) { … }
std::unique_ptr<views::View> PaymentRequestItemList::Item::CreateExtraView() { … }
void PaymentRequestItemList::Item::UpdateAccessibleName() { … }
void PaymentRequestItemList::Item::ButtonPressed() { … }
BEGIN_METADATA(…)
END_METADATA
PaymentRequestItemList::PaymentRequestItemList(
base::WeakPtr<PaymentRequestDialogView> dialog)
: … { … }
PaymentRequestItemList::~PaymentRequestItemList() { … }
void PaymentRequestItemList::AddItem(
std::unique_ptr<PaymentRequestItemList::Item> item) { … }
void PaymentRequestItemList::Clear() { … }
std::unique_ptr<views::View> PaymentRequestItemList::CreateListView() { … }
void PaymentRequestItemList::SelectItem(PaymentRequestItemList::Item* item) { … }
void PaymentRequestItemList::UnselectSelectedItem() { … }
}