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 10 namespace autofill { 11 12 // An interface for interaction with AutofillPopupController. Will be notified 13 // of events by the controller. 14 class AutofillPopupDelegate { 15 public: 16 // Called when the Autofill popup is shown. 17 virtual void OnPopupShown() = 0; 18 19 // Called when the Autofill popup is hidden. 20 virtual void OnPopupHidden() = 0; 21 22 // Called when the autofill suggestion indicated by |identifier| has been 23 // temporarily selected (e.g., hovered). 24 virtual void DidSelectSuggestion(const base::string16& value, 25 int identifier) = 0; 26 27 // Inform the delegate that a row in the popup has been chosen. 28 virtual void DidAcceptSuggestion(const base::string16& value, 29 int identifier) = 0; 30 31 // Delete the described suggestion. 32 virtual void RemoveSuggestion(const base::string16& value, 33 int identifier) = 0; 34 35 // Informs the delegate that the Autofill previewed form should be cleared. 36 virtual void ClearPreviewedForm() = 0; 37 }; 38 39 } // namespace autofill 40 41 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_POPUP_DELEGATE_H_ 42