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

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

Issue 256333003: Revert of Password bubble: Introduce a command to open the bubble. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 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_passwords_icon_view.cc
diff --git a/chrome/browser/ui/views/passwords/manage_passwords_icon_view.cc b/chrome/browser/ui/views/passwords/manage_passwords_icon_view.cc
index 73368045dda93b05e342467bfc5be631da84cc41..23a59502132629dee7cff272b220ae78cd404997 100644
--- a/chrome/browser/ui/views/passwords/manage_passwords_icon_view.cc
+++ b/chrome/browser/ui/views/passwords/manage_passwords_icon_view.cc
@@ -4,8 +4,6 @@
#include "chrome/browser/ui/views/passwords/manage_passwords_icon_view.h"
-#include "chrome/app/chrome_command_ids.h"
-#include "chrome/browser/command_updater.h"
#include "chrome/browser/ui/passwords/manage_passwords_bubble_ui_controller.h"
#include "chrome/browser/ui/view_ids.h"
#include "chrome/browser/ui/views/passwords/manage_passwords_bubble_view.h"
@@ -15,45 +13,38 @@
#include "ui/base/resource/resource_bundle.h"
ManagePasswordsIconView::ManagePasswordsIconView(
- LocationBarView::Delegate* location_bar_delegate,
- CommandUpdater* command_updater)
- : BubbleIconView(command_updater, IDC_MANAGE_PASSWORDS_FOR_PAGE),
- location_bar_delegate_(location_bar_delegate),
- command_updater_(command_updater),
- icon_id_(0),
- tooltip_text_id_(0) {
+ LocationBarView::Delegate* location_bar_delegate)
+ : location_bar_delegate_(location_bar_delegate) {
set_id(VIEW_ID_MANAGE_PASSWORDS_ICON_BUTTON);
SetAccessibilityFocusable(true);
- UpdateVisibleUI();
+ SetState(ManagePasswordsIcon::INACTIVE_STATE);
}
ManagePasswordsIconView::~ManagePasswordsIconView() {}
-void ManagePasswordsIconView::UpdateVisibleUI() {
- // If the icon is inactive: clear out it's image and tooltip, hide the icon,
- // close any active bubble, and exit early.
- if (state() == ManagePasswordsIcon::INACTIVE_STATE) {
- icon_id_ = 0;
- tooltip_text_id_ = 0;
-
+void ManagePasswordsIconView::SetStateInternal(
+ ManagePasswordsIcon::State state) {
+ if (state == ManagePasswordsIcon::INACTIVE_STATE) {
SetVisible(false);
if (ManagePasswordsBubbleView::IsShowing())
ManagePasswordsBubbleView::CloseBubble();
return;
}
- // Otherwise, start with the correct values for MANAGE_STATE, and adjust
- // things accordingly if we're either in BLACKLISTED_STATE or PENDING_STATE.
- icon_id_ = IDR_SAVE_PASSWORD;
- tooltip_text_id_ = IDS_PASSWORD_MANAGER_TOOLTIP_MANAGE;
- if (state() == ManagePasswordsIcon::BLACKLISTED_STATE)
- icon_id_ = IDR_SAVE_PASSWORD_BLACKLISTED;
- else if (state() == ManagePasswordsIcon::PENDING_STATE)
- tooltip_text_id_ = IDS_PASSWORD_MANAGER_TOOLTIP_SAVE;
+ // Start with the correct values for ManagePasswordsIcon::MANAGE_STATE, and
+ // adjust things accordingly if we're either in BLACKLISTED_STATE or
+ // PENDING_STATE.
+ int which_icon = IDR_SAVE_PASSWORD;
+ int which_text = IDS_PASSWORD_MANAGER_TOOLTIP_MANAGE;
+ if (state == ManagePasswordsIcon::BLACKLISTED_STATE)
+ which_icon = IDR_SAVE_PASSWORD_BLACKLISTED;
+ else if (state == ManagePasswordsIcon::PENDING_STATE)
+ which_text = IDS_PASSWORD_MANAGER_TOOLTIP_SAVE;
SetVisible(true);
- SetImage(ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed(icon_id_));
- SetTooltipText(l10n_util::GetStringUTF16(tooltip_text_id_));
+ SetImage(
+ ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed(which_icon));
+ SetTooltipText(l10n_util::GetStringUTF16(which_text));
}
void ManagePasswordsIconView::ShowBubbleWithoutUserInteraction() {
@@ -61,13 +52,36 @@
if (location_bar_delegate_->GetToolbarModel()->input_in_progress())
return;
- command_updater_->ExecuteCommand(IDC_MANAGE_PASSWORDS_FOR_PAGE);
+ ManagePasswordsBubbleView::ShowBubble(
+ location_bar_delegate_->GetWebContents(),
+ ManagePasswordsBubbleView::AUTOMATIC);
}
-bool ManagePasswordsIconView::IsBubbleShowing() const {
- return ManagePasswordsBubbleView::IsShowing();
+bool ManagePasswordsIconView::GetTooltipText(const gfx::Point& p,
+ base::string16* tooltip) const {
+ // Don't show tooltip if the password bubble is displayed.
+ return !ManagePasswordsBubbleView::IsShowing() &&
+ ImageView::GetTooltipText(p, tooltip);
}
-void ManagePasswordsIconView::OnExecuting(
- BubbleIconView::ExecuteSource source) {
+void ManagePasswordsIconView::OnGestureEvent(ui::GestureEvent* event) {
+ if (event->type() == ui::ET_GESTURE_TAP) {
+ ManagePasswordsBubbleView::ShowBubble(
+ location_bar_delegate_->GetWebContents(),
+ ManagePasswordsBubbleView::USER_ACTION);
+ event->SetHandled();
+ }
}
+
+bool ManagePasswordsIconView::OnMousePressed(const ui::MouseEvent& event) {
+ // Do nothing until the mouse button is released.
+ return true;
+}
+
+void ManagePasswordsIconView::OnMouseReleased(const ui::MouseEvent& event) {
+ if (event.IsOnlyLeftMouseButton() && HitTestPoint(event.location())) {
+ ManagePasswordsBubbleView::ShowBubble(
+ location_bar_delegate_->GetWebContents(),
+ ManagePasswordsBubbleView::USER_ACTION);
+ }
+}

Powered by Google App Engine
This is Rietveld 408576698