| Index: chrome/browser/ui/views/autofill/save_card_bubble_views.h
|
| diff --git a/chrome/browser/ui/views/autofill/save_card_bubble_views.h b/chrome/browser/ui/views/autofill/save_card_bubble_views.h
|
| index 797d05d1e4c51f84656711f6eaea1c8ace352af4..7fd2c23fb652feaa3c876f99ab29e25a82828be1 100644
|
| --- a/chrome/browser/ui/views/autofill/save_card_bubble_views.h
|
| +++ b/chrome/browser/ui/views/autofill/save_card_bubble_views.h
|
| @@ -45,6 +45,9 @@ class SaveCardBubbleViews : public SaveCardBubbleView,
|
| // SaveCardBubbleView
|
| void Hide() override;
|
|
|
| + // views::DialogDelegate
|
| + int GetDialogButtons() const override;
|
| +
|
| // views::BubbleDialogDelegateView
|
| views::View* CreateExtraView() override;
|
| views::View* CreateFootnoteView() override;
|
| @@ -58,6 +61,7 @@ class SaveCardBubbleViews : public SaveCardBubbleView,
|
| gfx::Size CalculatePreferredSize() const override;
|
|
|
| // views::WidgetDelegate
|
| + bool ShouldShowCloseButton() const override;
|
| base::string16 GetWindowTitle() const override;
|
| void WindowClosing() override;
|
|
|
| @@ -74,8 +78,20 @@ class SaveCardBubbleViews : public SaveCardBubbleView,
|
| const base::string16& new_contents) override;
|
|
|
| private:
|
| + // The current step of the save card flow. Accounts for:
|
| + // 1) Local save vs. Upload save
|
| + // 2) Upload save can have all information or be missing CVC
|
| + enum CurrentFlowStep {
|
| + UNKNOWN_STEP,
|
| + LOCAL_SAVE_ONLY_STEP,
|
| + UPLOAD_SAVE_ONLY_STEP,
|
| + UPLOAD_SAVE_CVC_FIX_FLOW_STEP_1_OFFER_UPLOAD,
|
| + UPLOAD_SAVE_CVC_FIX_FLOW_STEP_2_REQUEST_CVC,
|
| + };
|
| +
|
| ~SaveCardBubbleViews() override;
|
|
|
| + CurrentFlowStep GetCurrentFlowStep() const;
|
| std::unique_ptr<views::View> CreateMainContentView();
|
| std::unique_ptr<views::View> CreateRequestCvcView();
|
|
|
| @@ -84,6 +100,8 @@ class SaveCardBubbleViews : public SaveCardBubbleView,
|
|
|
| SaveCardBubbleController* controller_; // Weak reference.
|
|
|
| + views::View* footnote_view_ = nullptr;
|
| +
|
| ViewStack* view_stack_ = nullptr;
|
|
|
| views::Textfield* cvc_textfield_ = nullptr;
|
|
|