autofill_popup_delegate.h revision 0f1bc08d4cfcc34181b0b5cbf065c40f687bf740
1// Copyright 2013 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_POPUP_DELEGATE_H_ 6#define COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_POPUP_DELEGATE_H_ 7 8#include "base/strings/string16.h" 9 10namespace ui { 11class MouseEvent; 12} 13 14namespace autofill { 15 16// An interface for interaction with AutofillPopupController. Will be notified 17// of events by the controller. 18class AutofillPopupDelegate { 19 public: 20 // Called when the Autofill popup is shown. 21 virtual void OnPopupShown() = 0; 22 23 // Called when the Autofill popup is hidden. 24 virtual void OnPopupHidden() = 0; 25 26 // Called when the Autofill popup recieves a click outside of the popup view 27 // to determine if the event should be reposted to the native window manager. 28 virtual bool ShouldRepostEvent(const ui::MouseEvent& event) = 0; 29 30 // Called when the autofill suggestion indicated by |identifier| has been 31 // temporarily selected (e.g., hovered). 32 virtual void DidSelectSuggestion(int identifier) = 0; 33 34 // Inform the delegate that a row in the popup has been chosen. 35 virtual void DidAcceptSuggestion(const base::string16& value, 36 int identifier) = 0; 37 38 // Delete the described suggestion. 39 virtual void RemoveSuggestion(const base::string16& value, 40 int identifier) = 0; 41 42 // Informs the delegate that the Autofill previewed form should be cleared. 43 virtual void ClearPreviewedForm() = 0; 44}; 45 46} // namespace autofill 47 48#endif // COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_POPUP_DELEGATE_H_ 49