| Index: chrome/browser/ui/views/autofill/save_card_bubble_views.cc
|
| diff --git a/chrome/browser/ui/views/autofill/save_card_bubble_views.cc b/chrome/browser/ui/views/autofill/save_card_bubble_views.cc
|
| index 41e7293b0e1d89305421c131a973c3d64f291a1e..09f2591f153fa0bf0be51cb14ee4dfb395f68984 100644
|
| --- a/chrome/browser/ui/views/autofill/save_card_bubble_views.cc
|
| +++ b/chrome/browser/ui/views/autofill/save_card_bubble_views.cc
|
| @@ -65,16 +65,27 @@ SaveCardBubbleViews::SaveCardBubbleViews(views::View* anchor_view,
|
| learn_more_link_(nullptr) {
|
| DCHECK(controller);
|
| views::BubbleDelegateView::CreateBubble(this);
|
| + save_card_bubble_view_ = this;
|
| }
|
|
|
| +// static
|
| +SaveCardBubbleViews* SaveCardBubbleViews::save_card_bubble_view_ = nullptr;
|
| +
|
| SaveCardBubbleViews::~SaveCardBubbleViews() {}
|
|
|
| void SaveCardBubbleViews::Show(DisplayReason reason) {
|
| ShowForReason(reason);
|
| }
|
|
|
| +// static
|
| +void SaveCardBubbleViews::CloseBubble() {
|
| + if (save_card_bubble_view_ && save_card_bubble_view_->controller_)
|
| + save_card_bubble_view_->controller_->HideBubble();
|
| +}
|
| +
|
| void SaveCardBubbleViews::Hide() {
|
| controller_ = nullptr;
|
| + save_card_bubble_view_ = nullptr;
|
| Close();
|
| }
|
|
|
| @@ -93,6 +104,7 @@ bool SaveCardBubbleViews::ShouldShowWindowTitle() const {
|
| void SaveCardBubbleViews::WindowClosing() {
|
| if (controller_)
|
| controller_->OnBubbleClosed();
|
| + save_card_bubble_view_ = nullptr;
|
| }
|
|
|
| void SaveCardBubbleViews::ButtonPressed(views::Button* sender,
|
| @@ -103,6 +115,7 @@ void SaveCardBubbleViews::ButtonPressed(views::Button* sender,
|
| DCHECK_EQ(sender, cancel_button_);
|
| controller_->OnCancelButton();
|
| }
|
| + save_card_bubble_view_ = nullptr;
|
| Close();
|
| }
|
|
|
|
|