Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2610)

Unified Diff: chrome/browser/ui/views/passwords/manage_password_item_view.cc

Issue 534543002: Clean up ManagePasswordsBubbleView and ManagePasswordItemView. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: addressed comments Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/passwords/manage_password_item_view.cc
diff --git a/chrome/browser/ui/views/passwords/manage_password_item_view.cc b/chrome/browser/ui/views/passwords/manage_password_item_view.cc
index 3a28538ffdcff203507a8147dadb3a48b99b830a..8ddac6f9af07d6a0e2f6d669fd775affdc341936 100644
--- a/chrome/browser/ui/views/passwords/manage_password_item_view.cc
+++ b/chrome/browser/ui/views/passwords/manage_password_item_view.cc
@@ -6,12 +6,15 @@
#include "chrome/browser/ui/passwords/manage_passwords_bubble_model.h"
#include "chrome/grit/generated_resources.h"
-#include "components/password_manager/core/common/password_manager_ui.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/resource/resource_bundle.h"
#include "ui/resources/grit/ui_resources.h"
+#include "ui/views/border.h"
#include "ui/views/controls/button/button.h"
#include "ui/views/controls/button/image_button.h"
+#include "ui/views/controls/label.h"
+#include "ui/views/controls/link.h"
+#include "ui/views/controls/link_listener.h"
#include "ui/views/layout/fill_layout.h"
#include "ui/views/layout/grid_layout.h"
#include "ui/views/layout/layout_constants.h"
@@ -89,7 +92,15 @@ views::Label* GeneratePasswordLabel(const autofill::PasswordForm& form) {
} // namespace
-// Pending View
+// Render credentials in two columns: username and password.
+class ManagePasswordItemView::PendingView : public views::View {
+ public:
+ explicit PendingView(ManagePasswordItemView* parent);
+
+ private:
+ virtual ~PendingView();
+};
+
ManagePasswordItemView::PendingView::PendingView(
ManagePasswordItemView* parent) {
views::GridLayout* layout = new views::GridLayout(this);
@@ -106,7 +117,23 @@ ManagePasswordItemView::PendingView::PendingView(
ManagePasswordItemView::PendingView::~PendingView() {
}
-// Manage View
+// Render credentials in three columns: username, password, and delete.
+class ManagePasswordItemView::ManageView : public views::View,
+ public views::ButtonListener {
+ public:
+ explicit ManageView(ManagePasswordItemView* parent);
+
+ private:
+ virtual ~ManageView();
+
+ // views::ButtonListener:
+ virtual void ButtonPressed(views::Button* sender,
+ const ui::Event& event) OVERRIDE;
+
+ views::ImageButton* delete_button_;
+ ManagePasswordItemView* parent_;
+};
+
ManagePasswordItemView::ManageView::ManageView(ManagePasswordItemView* parent)
: parent_(parent) {
views::GridLayout* layout = new views::GridLayout(this);
@@ -130,16 +157,32 @@ ManagePasswordItemView::ManageView::ManageView(ManagePasswordItemView* parent)
layout->AddPaddingRow(0, views::kRelatedControlVerticalSpacing);
}
+ManagePasswordItemView::ManageView::~ManageView() {
+}
+
void ManagePasswordItemView::ManageView::ButtonPressed(views::Button* sender,
const ui::Event& event) {
DCHECK_EQ(delete_button_, sender);
parent_->NotifyClickedDelete();
}
-ManagePasswordItemView::ManageView::~ManageView() {
-}
+// Render a notification to the user that a password has been removed, and
+// offer an undo link.
+class ManagePasswordItemView::UndoView : public views::View,
+ public views::LinkListener {
+ public:
+ explicit UndoView(ManagePasswordItemView* parent);
+
+ private:
+ virtual ~UndoView();
+
+ // views::LinkListener:
+ virtual void LinkClicked(views::Link* source, int event_flags) OVERRIDE;
+
+ views::Link* undo_link_;
+ ManagePasswordItemView* parent_;
+};
-// Undo View
ManagePasswordItemView::UndoView::UndoView(ManagePasswordItemView* parent)
: parent_(parent) {
views::GridLayout* layout = new views::GridLayout(this);
@@ -167,15 +210,15 @@ ManagePasswordItemView::UndoView::UndoView(ManagePasswordItemView* parent)
layout->AddPaddingRow(0, views::kRelatedControlVerticalSpacing);
}
+ManagePasswordItemView::UndoView::~UndoView() {
+}
+
void ManagePasswordItemView::UndoView::LinkClicked(views::Link* sender,
int event_flags) {
DCHECK_EQ(undo_link_, sender);
parent_->NotifyClickedUndo();
}
-ManagePasswordItemView::UndoView::~UndoView() {
-}
-
// ManagePasswordItemView
ManagePasswordItemView::ManagePasswordItemView(
ManagePasswordsBubbleModel* manage_passwords_bubble_model,
@@ -209,6 +252,16 @@ ManagePasswordItemView::ManagePasswordItemView(
ManagePasswordItemView::~ManagePasswordItemView() {
}
+void ManagePasswordItemView::NotifyClickedDelete() {
+ delete_password_ = true;
+ Refresh();
+}
+
+void ManagePasswordItemView::NotifyClickedUndo() {
+ delete_password_ = false;
+ Refresh();
+}
+
void ManagePasswordItemView::Refresh() {
DCHECK(!password_manager::ui::IsPendingState(model_->state()));
@@ -226,13 +279,3 @@ void ManagePasswordItemView::Refresh() {
? ManagePasswordsBubbleModel::REMOVE_PASSWORD
: ManagePasswordsBubbleModel::ADD_PASSWORD);
}
-
-void ManagePasswordItemView::NotifyClickedDelete() {
- delete_password_ = true;
- Refresh();
-}
-
-void ManagePasswordItemView::NotifyClickedUndo() {
- delete_password_ = false;
- Refresh();
-}

Powered by Google App Engine
This is Rietveld 408576698