OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef COMPONENTS_INFOBARS_CORE_INFOBAR_DELEGATE_H_ | 5 #ifndef COMPONENTS_INFOBARS_CORE_INFOBAR_DELEGATE_H_ |
6 #define COMPONENTS_INFOBARS_CORE_INFOBAR_DELEGATE_H_ | 6 #define COMPONENTS_INFOBARS_CORE_INFOBAR_DELEGATE_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/strings/string16.h" | 9 #include "base/strings/string16.h" |
10 #include "ui/base/window_open_disposition.h" | 10 #include "ui/base/window_open_disposition.h" |
11 | 11 |
12 class AutoLoginInfoBarDelegate; | |
13 class ConfirmInfoBarDelegate; | 12 class ConfirmInfoBarDelegate; |
14 class InsecureContentInfoBarDelegate; | 13 class InsecureContentInfoBarDelegate; |
15 class MediaStreamInfoBarDelegate; | 14 class MediaStreamInfoBarDelegate; |
16 class NativeAppInfoBarDelegate; | 15 class NativeAppInfoBarDelegate; |
17 class PermissionInfobarDelegate; | 16 class PermissionInfobarDelegate; |
18 class PopupBlockedInfoBarDelegate; | 17 class PopupBlockedInfoBarDelegate; |
19 class RegisterProtocolHandlerInfoBarDelegate; | 18 class RegisterProtocolHandlerInfoBarDelegate; |
20 class ScreenCaptureInfoBarDelegate; | 19 class ScreenCaptureInfoBarDelegate; |
21 class ThemeInstalledInfoBarDelegate; | 20 class ThemeInstalledInfoBarDelegate; |
22 class ThreeDAPIInfoBarDelegate; | 21 class ThreeDAPIInfoBarDelegate; |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
104 // is navigated. By default this returns true if the navigation is to a new | 103 // is navigated. By default this returns true if the navigation is to a new |
105 // page (not including reloads). Subclasses wishing to change this behavior | 104 // page (not including reloads). Subclasses wishing to change this behavior |
106 // can override either this function or ShouldExpireInternal(), depending on | 105 // can override either this function or ShouldExpireInternal(), depending on |
107 // what level of control they need. | 106 // what level of control they need. |
108 virtual bool ShouldExpire(const NavigationDetails& details) const; | 107 virtual bool ShouldExpire(const NavigationDetails& details) const; |
109 | 108 |
110 // Called when the user clicks on the close button to dismiss the infobar. | 109 // Called when the user clicks on the close button to dismiss the infobar. |
111 virtual void InfoBarDismissed(); | 110 virtual void InfoBarDismissed(); |
112 | 111 |
113 // Type-checking downcast routines: | 112 // Type-checking downcast routines: |
114 virtual AutoLoginInfoBarDelegate* AsAutoLoginInfoBarDelegate(); | |
115 virtual ConfirmInfoBarDelegate* AsConfirmInfoBarDelegate(); | 113 virtual ConfirmInfoBarDelegate* AsConfirmInfoBarDelegate(); |
116 virtual InsecureContentInfoBarDelegate* AsInsecureContentInfoBarDelegate(); | 114 virtual InsecureContentInfoBarDelegate* AsInsecureContentInfoBarDelegate(); |
117 virtual MediaStreamInfoBarDelegate* AsMediaStreamInfoBarDelegate(); | 115 virtual MediaStreamInfoBarDelegate* AsMediaStreamInfoBarDelegate(); |
118 virtual NativeAppInfoBarDelegate* AsNativeAppInfoBarDelegate(); | 116 virtual NativeAppInfoBarDelegate* AsNativeAppInfoBarDelegate(); |
119 virtual PermissionInfobarDelegate* AsPermissionInfobarDelegate(); | 117 virtual PermissionInfobarDelegate* AsPermissionInfobarDelegate(); |
120 virtual PopupBlockedInfoBarDelegate* AsPopupBlockedInfoBarDelegate(); | 118 virtual PopupBlockedInfoBarDelegate* AsPopupBlockedInfoBarDelegate(); |
121 virtual RegisterProtocolHandlerInfoBarDelegate* | 119 virtual RegisterProtocolHandlerInfoBarDelegate* |
122 AsRegisterProtocolHandlerInfoBarDelegate(); | 120 AsRegisterProtocolHandlerInfoBarDelegate(); |
123 virtual ScreenCaptureInfoBarDelegate* AsScreenCaptureInfoBarDelegate(); | 121 virtual ScreenCaptureInfoBarDelegate* AsScreenCaptureInfoBarDelegate(); |
124 virtual ThemeInstalledInfoBarDelegate* AsThemePreviewInfobarDelegate(); | 122 virtual ThemeInstalledInfoBarDelegate* AsThemePreviewInfobarDelegate(); |
(...skipping 14 matching lines...) Expand all Loading... |
139 | 137 |
140 // The ID of the active navigation entry at the time we became owned. | 138 // The ID of the active navigation entry at the time we became owned. |
141 int nav_entry_id_; | 139 int nav_entry_id_; |
142 | 140 |
143 DISALLOW_COPY_AND_ASSIGN(InfoBarDelegate); | 141 DISALLOW_COPY_AND_ASSIGN(InfoBarDelegate); |
144 }; | 142 }; |
145 | 143 |
146 } // namespace infobars | 144 } // namespace infobars |
147 | 145 |
148 #endif // COMPONENTS_INFOBARS_CORE_INFOBAR_DELEGATE_H_ | 146 #endif // COMPONENTS_INFOBARS_CORE_INFOBAR_DELEGATE_H_ |
OLD | NEW |