#include "chrome/browser/ui/views/passwords/manage_passwords_view.h"
#include <memory>
#include <optional>
#include <utility>
#include "base/functional/bind.h"
#include "base/time/time.h"
#include "chrome/app/vector_icons/vector_icons.h"
#include "chrome/browser/ui/passwords/bubble_controllers/manage_passwords_bubble_controller.h"
#include "chrome/browser/ui/passwords/passwords_model_delegate.h"
#include "chrome/browser/ui/passwords/ui_utils.h"
#include "chrome/browser/ui/views/chrome_layout_provider.h"
#include "chrome/browser/ui/views/controls/page_switcher_view.h"
#include "chrome/browser/ui/views/passwords/manage_passwords_details_view.h"
#include "chrome/browser/ui/views/passwords/manage_passwords_list_view.h"
#include "chrome/browser/ui/views/passwords/views_utils.h"
#include "chrome/grit/branded_strings.h"
#include "chrome/grit/generated_resources.h"
#include "components/password_manager/core/browser/password_manager_metrics_util.h"
#include "components/password_manager/core/browser/password_sync_util.h"
#include "components/password_manager/core/common/password_manager_constants.h"
#include "components/vector_icons/vector_icons.h"
#include "ui/base/interaction/element_identifier.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/base/mojom/dialog_button.mojom.h"
#include "ui/gfx/favicon_size.h"
#include "ui/views/controls/styled_label.h"
#include "ui/views/layout/fill_layout.h"
#include "ui/views/layout/flex_layout.h"
#include "ui/views/layout/flex_layout_view.h"
#include "ui/views/layout/table_layout.h"
#include "ui/views/layout/table_layout_view.h"
#include "ui/views/view_class_properties.h"
PasswordManagementBubbleInteractions;
ManagePasswordsView::ManagePasswordsView(content::WebContents* web_contents,
views::View* anchor_view)
: … { … }
ManagePasswordsView::~ManagePasswordsView() = default;
void ManagePasswordsView::DisplayDetailsOfPasswordForTesting(
password_manager::PasswordForm password_form) { … }
PasswordBubbleControllerBase* ManagePasswordsView::GetController() { … }
const PasswordBubbleControllerBase* ManagePasswordsView::GetController() const { … }
ui::ImageModel ManagePasswordsView::GetWindowIcon() { … }
void ManagePasswordsView::AddedToWidget() { … }
bool ManagePasswordsView::Accept() { … }
bool ManagePasswordsView::Cancel() { … }
std::unique_ptr<ManagePasswordsListView>
ManagePasswordsView::CreatePasswordListView() { … }
std::unique_ptr<ManagePasswordsDetailsView>
ManagePasswordsView::CreatePasswordDetailsView() { … }
std::unique_ptr<views::View> ManagePasswordsView::CreateFooterView() { … }
std::unique_ptr<views::View>
ManagePasswordsView::CreateMovePasswordFooterView() { … }
void ManagePasswordsView::RecreateLayout() { … }
void ManagePasswordsView::SwitchToReadingMode() { … }
void ManagePasswordsView::SwitchToListView() { … }
void ManagePasswordsView::ExtendAuthValidity() { … }
void ManagePasswordsView::OnFaviconReady(const gfx::Image& favicon) { … }
ui::ImageModel ManagePasswordsView::GetFaviconImageModel() const { … }
void ManagePasswordsView::AuthenticateUserAndDisplayDetailsOf(
password_manager::PasswordForm password_form) { … }
DEFINE_CLASS_ELEMENT_IDENTIFIER_VALUE(ManagePasswordsView, kTopView);
DEFINE_CLASS_ELEMENT_IDENTIFIER_VALUE(ManagePasswordsView, kFooterId);
BEGIN_METADATA(…)