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

Unified Diff: chrome/browser/ui/views/autofill/save_card_icon_view.h

Issue 1568983002: Close the save card bubble on tab switch. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove static method, use TabStripModelObserver instead Created 4 years, 11 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/autofill/save_card_icon_view.h
diff --git a/chrome/browser/ui/views/autofill/save_card_icon_view.h b/chrome/browser/ui/views/autofill/save_card_icon_view.h
index f591420faba5724cef50a760d4fb31e6b10aec4a..f2c2971a00bad3d473dd4ae77b87e32ed7d37557 100644
--- a/chrome/browser/ui/views/autofill/save_card_icon_view.h
+++ b/chrome/browser/ui/views/autofill/save_card_icon_view.h
@@ -6,6 +6,7 @@
#define CHROME_BROWSER_UI_VIEWS_AUTOFILL_SAVE_CARD_ICON_VIEW_H_
#include "base/macros.h"
+#include "chrome/browser/ui/tabs/tab_strip_model_observer.h"
#include "chrome/browser/ui/views/location_bar/bubble_icon_view.h"
class Browser;
@@ -13,10 +14,12 @@ class CommandUpdater;
namespace autofill {
+class SaveCardBubbleControllerImpl;
+
// The location bar icon to show the Save Credit Card bubble where the user can
// choose to save the credit card info to use again later without re-entering
// it.
-class SaveCardIconView : public BubbleIconView {
+class SaveCardIconView : public BubbleIconView, public TabStripModelObserver {
public:
explicit SaveCardIconView(CommandUpdater* command_updater, Browser* browser);
~SaveCardIconView() override;
@@ -24,10 +27,16 @@ class SaveCardIconView : public BubbleIconView {
protected:
// BubbleIconView:
void OnExecuting(BubbleIconView::ExecuteSource execute_source) override;
+ bool OnMousePressed(const ui::MouseEvent& event) override;
views::BubbleDelegateView* GetBubble() const override;
gfx::VectorIconId GetVectorIcon() const override;
+ // TabStripModelObserver:
+ void TabDeactivated(content::WebContents* contents) override;
+
private:
+ SaveCardBubbleControllerImpl* GetController() const;
+
// May be nullptr.
Browser* browser_;

Powered by Google App Engine
This is Rietveld 408576698