OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 var AddLanguageOverlay = options.AddLanguageOverlay; | 5 var AddLanguageOverlay = options.AddLanguageOverlay; |
6 var AlertOverlay = options.AlertOverlay; | 6 var AlertOverlay = options.AlertOverlay; |
7 var AutofillEditAddressOverlay = options.AutofillEditAddressOverlay; | 7 var AutofillEditAddressOverlay = options.AutofillEditAddressOverlay; |
8 var AutofillEditCreditCardOverlay = options.AutofillEditCreditCardOverlay; | 8 var AutofillEditCreditCardOverlay = options.AutofillEditCreditCardOverlay; |
9 var AutofillOptions = options.AutofillOptions; | 9 var AutofillOptions = options.AutofillOptions; |
10 var AutomaticSettingsResetBanner = options.AutomaticSettingsResetBanner; | 10 var AutomaticSettingsResetBanner = options.AutomaticSettingsResetBanner; |
(...skipping 12 matching lines...) Expand all Loading... |
23 </if> | 23 </if> |
24 var FontSettings = options.FontSettings; | 24 var FontSettings = options.FontSettings; |
25 var HandlerOptions = options.HandlerOptions; | 25 var HandlerOptions = options.HandlerOptions; |
26 var HomePageOverlay = options.HomePageOverlay; | 26 var HomePageOverlay = options.HomePageOverlay; |
27 var HotwordConfirmDialog = options.HotwordConfirmDialog; | 27 var HotwordConfirmDialog = options.HotwordConfirmDialog; |
28 var ImportDataOverlay = options.ImportDataOverlay; | 28 var ImportDataOverlay = options.ImportDataOverlay; |
29 var LanguageOptions = options.LanguageOptions; | 29 var LanguageOptions = options.LanguageOptions; |
30 var ManageProfileOverlay = options.ManageProfileOverlay; | 30 var ManageProfileOverlay = options.ManageProfileOverlay; |
31 var OptionsFocusManager = options.OptionsFocusManager; | 31 var OptionsFocusManager = options.OptionsFocusManager; |
32 var OptionsPage = options.OptionsPage; | 32 var OptionsPage = options.OptionsPage; |
| 33 var PageManager = cr.ui.pageManager.PageManager; |
33 var PasswordManager = options.PasswordManager; | 34 var PasswordManager = options.PasswordManager; |
34 var Preferences = options.Preferences; | 35 var Preferences = options.Preferences; |
35 var PreferredNetworks = options.PreferredNetworks; | 36 var PreferredNetworks = options.PreferredNetworks; |
36 var ResetProfileSettingsBanner = options.ResetProfileSettingsBanner; | 37 var ResetProfileSettingsBanner = options.ResetProfileSettingsBanner; |
37 var ResetProfileSettingsOverlay = options.ResetProfileSettingsOverlay; | 38 var ResetProfileSettingsOverlay = options.ResetProfileSettingsOverlay; |
38 var SearchEngineManager = options.SearchEngineManager; | 39 var SearchEngineManager = options.SearchEngineManager; |
39 var SearchPage = options.SearchPage; | 40 var SearchPage = options.SearchPage; |
40 var StartupOverlay = options.StartupOverlay; | 41 var StartupOverlay = options.StartupOverlay; |
41 var SupervisedUserCreateConfirmOverlay = | 42 var SupervisedUserCreateConfirmOverlay = |
42 options.SupervisedUserCreateConfirmOverlay; | 43 options.SupervisedUserCreateConfirmOverlay; |
(...skipping 17 matching lines...) Expand all Loading... |
60 cr.ui.decorate('input[pref][type=url]', options.PrefTextField); | 61 cr.ui.decorate('input[pref][type=url]', options.PrefTextField); |
61 cr.ui.decorate('button[pref]', options.PrefButton); | 62 cr.ui.decorate('button[pref]', options.PrefButton); |
62 cr.ui.decorate('#content-settings-page input[type=radio]:not(.handler-radio)', | 63 cr.ui.decorate('#content-settings-page input[type=radio]:not(.handler-radio)', |
63 options.ContentSettingsRadio); | 64 options.ContentSettingsRadio); |
64 cr.ui.decorate('#content-settings-page input[type=radio].handler-radio', | 65 cr.ui.decorate('#content-settings-page input[type=radio].handler-radio', |
65 options.HandlersEnabledRadio); | 66 options.HandlersEnabledRadio); |
66 cr.ui.decorate('span.controlled-setting-indicator', | 67 cr.ui.decorate('span.controlled-setting-indicator', |
67 options.ControlledSettingIndicator); | 68 options.ControlledSettingIndicator); |
68 | 69 |
69 // Top level pages. | 70 // Top level pages. |
70 OptionsPage.register(SearchPage.getInstance()); | 71 PageManager.register(SearchPage.getInstance()); |
71 OptionsPage.register(BrowserOptions.getInstance()); | 72 PageManager.register(BrowserOptions.getInstance()); |
72 | 73 |
73 // Overlays. | 74 // Overlays. |
74 OptionsPage.registerOverlay(AddLanguageOverlay.getInstance(), | 75 PageManager.registerOverlay(AddLanguageOverlay.getInstance(), |
75 LanguageOptions.getInstance()); | 76 LanguageOptions.getInstance()); |
76 OptionsPage.registerOverlay(AlertOverlay.getInstance()); | 77 PageManager.registerOverlay(AlertOverlay.getInstance()); |
77 OptionsPage.registerOverlay(AutofillEditAddressOverlay.getInstance(), | 78 PageManager.registerOverlay(AutofillEditAddressOverlay.getInstance(), |
78 AutofillOptions.getInstance()); | 79 AutofillOptions.getInstance()); |
79 OptionsPage.registerOverlay(AutofillEditCreditCardOverlay.getInstance(), | 80 PageManager.registerOverlay(AutofillEditCreditCardOverlay.getInstance(), |
80 AutofillOptions.getInstance()); | 81 AutofillOptions.getInstance()); |
81 OptionsPage.registerOverlay(AutofillOptions.getInstance(), | 82 PageManager.registerOverlay(AutofillOptions.getInstance(), |
82 BrowserOptions.getInstance(), | 83 BrowserOptions.getInstance(), |
83 [$('autofill-settings')]); | 84 [$('autofill-settings')]); |
84 OptionsPage.registerOverlay(ClearBrowserDataOverlay.getInstance(), | 85 PageManager.registerOverlay(ClearBrowserDataOverlay.getInstance(), |
85 BrowserOptions.getInstance(), | 86 BrowserOptions.getInstance(), |
86 [$('privacyClearDataButton')]); | 87 [$('privacyClearDataButton')]); |
87 OptionsPage.registerOverlay( | 88 PageManager.registerOverlay( |
88 new ConfirmDialog( | 89 new ConfirmDialog( |
89 'doNotTrackConfirm', | 90 'doNotTrackConfirm', |
90 loadTimeData.getString('doNotTrackConfirmOverlayTabTitle'), | 91 loadTimeData.getString('doNotTrackConfirmOverlayTabTitle'), |
91 'do-not-track-confirm-overlay', | 92 'do-not-track-confirm-overlay', |
92 $('do-not-track-confirm-ok'), | 93 $('do-not-track-confirm-ok'), |
93 $('do-not-track-confirm-cancel'), | 94 $('do-not-track-confirm-cancel'), |
94 $('do-not-track-enabled').pref, | 95 $('do-not-track-enabled').pref, |
95 $('do-not-track-enabled').metric), | 96 $('do-not-track-enabled').metric), |
96 BrowserOptions.getInstance()); | 97 BrowserOptions.getInstance()); |
97 // 'spelling-enabled-control' element is only present on Chrome branded | 98 // 'spelling-enabled-control' element is only present on Chrome branded |
98 // builds. | 99 // builds. |
99 if ($('spelling-enabled-control')) { | 100 if ($('spelling-enabled-control')) { |
100 OptionsPage.registerOverlay( | 101 PageManager.registerOverlay( |
101 new ConfirmDialog( | 102 new ConfirmDialog( |
102 'spellingConfirm', | 103 'spellingConfirm', |
103 loadTimeData.getString('spellingConfirmOverlayTabTitle'), | 104 loadTimeData.getString('spellingConfirmOverlayTabTitle'), |
104 'spelling-confirm-overlay', | 105 'spelling-confirm-overlay', |
105 $('spelling-confirm-ok'), | 106 $('spelling-confirm-ok'), |
106 $('spelling-confirm-cancel'), | 107 $('spelling-confirm-cancel'), |
107 $('spelling-enabled-control').pref, | 108 $('spelling-enabled-control').pref, |
108 $('spelling-enabled-control').metric), | 109 $('spelling-enabled-control').metric), |
109 BrowserOptions.getInstance()); | 110 BrowserOptions.getInstance()); |
110 } | 111 } |
111 OptionsPage.registerOverlay(new HotwordConfirmDialog(), | 112 PageManager.registerOverlay(new HotwordConfirmDialog(), |
112 BrowserOptions.getInstance()); | 113 BrowserOptions.getInstance()); |
113 OptionsPage.registerOverlay(ContentSettings.getInstance(), | 114 PageManager.registerOverlay(ContentSettings.getInstance(), |
114 BrowserOptions.getInstance(), | 115 BrowserOptions.getInstance(), |
115 [$('privacyContentSettingsButton')]); | 116 [$('privacyContentSettingsButton')]); |
116 OptionsPage.registerOverlay(WebsiteSettingsManager.getInstance(), | 117 PageManager.registerOverlay(WebsiteSettingsManager.getInstance(), |
117 BrowserOptions.getInstance(), | 118 BrowserOptions.getInstance(), |
118 [$('website-management-button')]); | 119 [$('website-management-button')]); |
119 OptionsPage.registerOverlay(ContentSettingsExceptionsArea.getInstance(), | 120 PageManager.registerOverlay(ContentSettingsExceptionsArea.getInstance(), |
120 ContentSettings.getInstance()); | 121 ContentSettings.getInstance()); |
121 OptionsPage.registerOverlay(CookiesView.getInstance(), | 122 PageManager.registerOverlay(CookiesView.getInstance(), |
122 ContentSettings.getInstance(), | 123 ContentSettings.getInstance(), |
123 [$('privacyContentSettingsButton'), | 124 [$('privacyContentSettingsButton'), |
124 $('show-cookies-button')]); | 125 $('show-cookies-button')]); |
125 OptionsPage.registerOverlay(CreateProfileOverlay.getInstance(), | 126 PageManager.registerOverlay(CreateProfileOverlay.getInstance(), |
126 BrowserOptions.getInstance()); | 127 BrowserOptions.getInstance()); |
127 if (!cr.isMac) { | 128 if (!cr.isMac) { |
128 OptionsPage.registerOverlay(EditDictionaryOverlay.getInstance(), | 129 PageManager.registerOverlay(EditDictionaryOverlay.getInstance(), |
129 LanguageOptions.getInstance(), | 130 LanguageOptions.getInstance(), |
130 [$('edit-dictionary-button')]); | 131 [$('edit-dictionary-button')]); |
131 } | 132 } |
132 OptionsPage.registerOverlay(FontSettings.getInstance(), | 133 PageManager.registerOverlay(FontSettings.getInstance(), |
133 BrowserOptions.getInstance(), | 134 BrowserOptions.getInstance(), |
134 [$('fontSettingsCustomizeFontsButton')]); | 135 [$('fontSettingsCustomizeFontsButton')]); |
135 if (HandlerOptions && $('manage-handlers-button')) { | 136 if (HandlerOptions && $('manage-handlers-button')) { |
136 OptionsPage.registerOverlay(HandlerOptions.getInstance(), | 137 PageManager.registerOverlay(HandlerOptions.getInstance(), |
137 ContentSettings.getInstance(), | 138 ContentSettings.getInstance(), |
138 [$('manage-handlers-button')]); | 139 [$('manage-handlers-button')]); |
139 } | 140 } |
140 OptionsPage.registerOverlay(HomePageOverlay.getInstance(), | 141 PageManager.registerOverlay(HomePageOverlay.getInstance(), |
141 BrowserOptions.getInstance(), | 142 BrowserOptions.getInstance(), |
142 [$('change-home-page')]); | 143 [$('change-home-page')]); |
143 OptionsPage.registerOverlay(ImportDataOverlay.getInstance(), | 144 PageManager.registerOverlay(ImportDataOverlay.getInstance(), |
144 BrowserOptions.getInstance()); | 145 BrowserOptions.getInstance()); |
145 OptionsPage.registerOverlay(LanguageOptions.getInstance(), | 146 PageManager.registerOverlay(LanguageOptions.getInstance(), |
146 BrowserOptions.getInstance(), | 147 BrowserOptions.getInstance(), |
147 [$('language-button'), | 148 [$('language-button'), |
148 $('manage-languages')]); | 149 $('manage-languages')]); |
149 OptionsPage.registerOverlay(ManageProfileOverlay.getInstance(), | 150 PageManager.registerOverlay(ManageProfileOverlay.getInstance(), |
150 BrowserOptions.getInstance()); | 151 BrowserOptions.getInstance()); |
151 if (!cr.isChromeOS) { | 152 if (!cr.isChromeOS) { |
152 OptionsPage.registerOverlay(SupervisedUserCreateConfirmOverlay. | 153 PageManager.registerOverlay(SupervisedUserCreateConfirmOverlay. |
153 getInstance(), | 154 getInstance(), |
154 BrowserOptions.getInstance()); | 155 BrowserOptions.getInstance()); |
155 OptionsPage.registerOverlay(SupervisedUserImportOverlay.getInstance(), | 156 PageManager.registerOverlay(SupervisedUserImportOverlay.getInstance(), |
156 CreateProfileOverlay.getInstance()); | 157 CreateProfileOverlay.getInstance()); |
157 OptionsPage.registerOverlay(SupervisedUserLearnMoreOverlay.getInstance(), | 158 PageManager.registerOverlay(SupervisedUserLearnMoreOverlay.getInstance(), |
158 CreateProfileOverlay.getInstance()); | 159 CreateProfileOverlay.getInstance()); |
159 } | 160 } |
160 OptionsPage.registerOverlay(PasswordManager.getInstance(), | 161 PageManager.registerOverlay(PasswordManager.getInstance(), |
161 BrowserOptions.getInstance(), | 162 BrowserOptions.getInstance(), |
162 [$('manage-passwords')]); | 163 [$('manage-passwords')]); |
163 OptionsPage.registerOverlay(ResetProfileSettingsOverlay.getInstance(), | 164 PageManager.registerOverlay(ResetProfileSettingsOverlay.getInstance(), |
164 BrowserOptions.getInstance(), | 165 BrowserOptions.getInstance(), |
165 [$('reset-profile-settings')]); | 166 [$('reset-profile-settings')]); |
166 OptionsPage.registerOverlay(SearchEngineManager.getInstance(), | 167 PageManager.registerOverlay(SearchEngineManager.getInstance(), |
167 BrowserOptions.getInstance(), | 168 BrowserOptions.getInstance(), |
168 [$('manage-default-search-engines')]); | 169 [$('manage-default-search-engines')]); |
169 OptionsPage.registerOverlay(StartupOverlay.getInstance(), | 170 PageManager.registerOverlay(StartupOverlay.getInstance(), |
170 BrowserOptions.getInstance()); | 171 BrowserOptions.getInstance()); |
171 OptionsPage.registerOverlay(SyncSetupOverlay.getInstance(), | 172 PageManager.registerOverlay(SyncSetupOverlay.getInstance(), |
172 BrowserOptions.getInstance(), | 173 BrowserOptions.getInstance(), |
173 [$('customize-sync')]); | 174 [$('customize-sync')]); |
174 if (cr.isChromeOS) { | 175 if (cr.isChromeOS) { |
175 OptionsPage.registerOverlay(AccountsOptions.getInstance(), | 176 PageManager.registerOverlay(AccountsOptions.getInstance(), |
176 BrowserOptions.getInstance(), | 177 BrowserOptions.getInstance(), |
177 [$('manage-accounts-button')]); | 178 [$('manage-accounts-button')]); |
178 OptionsPage.registerOverlay(BluetoothOptions.getInstance(), | 179 PageManager.registerOverlay(BluetoothOptions.getInstance(), |
179 BrowserOptions.getInstance(), | 180 BrowserOptions.getInstance(), |
180 [$('bluetooth-add-device')]); | 181 [$('bluetooth-add-device')]); |
181 OptionsPage.registerOverlay(BluetoothPairing.getInstance(), | 182 PageManager.registerOverlay(BluetoothPairing.getInstance(), |
182 BrowserOptions.getInstance()); | 183 BrowserOptions.getInstance()); |
183 OptionsPage.registerOverlay(FactoryResetOverlay.getInstance(), | 184 PageManager.registerOverlay(FactoryResetOverlay.getInstance(), |
184 BrowserOptions.getInstance(), | 185 BrowserOptions.getInstance(), |
185 [$('factory-reset-restart')]); | 186 [$('factory-reset-restart')]); |
186 OptionsPage.registerOverlay(ChangePictureOptions.getInstance(), | 187 PageManager.registerOverlay(ChangePictureOptions.getInstance(), |
187 BrowserOptions.getInstance(), | 188 BrowserOptions.getInstance(), |
188 [$('account-picture')]); | 189 [$('account-picture')]); |
189 OptionsPage.registerOverlay(ConsumerManagementOverlay.getInstance(), | 190 PageManager.registerOverlay(ConsumerManagementOverlay.getInstance(), |
190 BrowserOptions.getInstance()); | 191 BrowserOptions.getInstance()); |
191 OptionsPage.registerOverlay(DetailsInternetPage.getInstance(), | 192 PageManager.registerOverlay(DetailsInternetPage.getInstance(), |
192 BrowserOptions.getInstance()); | 193 BrowserOptions.getInstance()); |
193 OptionsPage.registerOverlay(DisplayOptions.getInstance(), | 194 PageManager.registerOverlay(DisplayOptions.getInstance(), |
194 BrowserOptions.getInstance(), | 195 BrowserOptions.getInstance(), |
195 [$('display-options')]); | 196 [$('display-options')]); |
196 OptionsPage.registerOverlay(DisplayOverscan.getInstance(), | 197 PageManager.registerOverlay(DisplayOverscan.getInstance(), |
197 DisplayOptions.getInstance()); | 198 DisplayOptions.getInstance()); |
198 OptionsPage.registerOverlay(KeyboardOverlay.getInstance(), | 199 PageManager.registerOverlay(KeyboardOverlay.getInstance(), |
199 BrowserOptions.getInstance(), | 200 BrowserOptions.getInstance(), |
200 [$('keyboard-settings-button')]); | 201 [$('keyboard-settings-button')]); |
201 OptionsPage.registerOverlay(PointerOverlay.getInstance(), | 202 PageManager.registerOverlay(PointerOverlay.getInstance(), |
202 BrowserOptions.getInstance(), | 203 BrowserOptions.getInstance(), |
203 [$('pointer-settings-button')]); | 204 [$('pointer-settings-button')]); |
204 OptionsPage.registerOverlay(PreferredNetworks.getInstance(), | 205 PageManager.registerOverlay(PreferredNetworks.getInstance(), |
205 BrowserOptions.getInstance()); | 206 BrowserOptions.getInstance()); |
206 OptionsPage.registerOverlay(ThirdPartyImeConfirmOverlay.getInstance(), | 207 PageManager.registerOverlay(ThirdPartyImeConfirmOverlay.getInstance(), |
207 LanguageOptions.getInstance()); | 208 LanguageOptions.getInstance()); |
208 } | 209 } |
209 | 210 |
210 if (!cr.isWindows && !cr.isMac) { | 211 if (!cr.isWindows && !cr.isMac) { |
211 OptionsPage.registerOverlay(CertificateBackupOverlay.getInstance(), | 212 PageManager.registerOverlay(CertificateBackupOverlay.getInstance(), |
212 CertificateManager.getInstance()); | 213 CertificateManager.getInstance()); |
213 OptionsPage.registerOverlay(CertificateEditCaTrustOverlay.getInstance(), | 214 PageManager.registerOverlay(CertificateEditCaTrustOverlay.getInstance(), |
214 CertificateManager.getInstance()); | 215 CertificateManager.getInstance()); |
215 OptionsPage.registerOverlay(CertificateImportErrorOverlay.getInstance(), | 216 PageManager.registerOverlay(CertificateImportErrorOverlay.getInstance(), |
216 CertificateManager.getInstance()); | 217 CertificateManager.getInstance()); |
217 OptionsPage.registerOverlay(CertificateManager.getInstance(), | 218 PageManager.registerOverlay(CertificateManager.getInstance(), |
218 BrowserOptions.getInstance(), | 219 BrowserOptions.getInstance(), |
219 [$('certificatesManageButton')]); | 220 [$('certificatesManageButton')]); |
220 OptionsPage.registerOverlay(CertificateRestoreOverlay.getInstance(), | 221 PageManager.registerOverlay(CertificateRestoreOverlay.getInstance(), |
221 CertificateManager.getInstance()); | 222 CertificateManager.getInstance()); |
222 } | 223 } |
223 | 224 |
224 cr.ui.FocusManager.disableMouseFocusOnButtons(); | 225 cr.ui.FocusManager.disableMouseFocusOnButtons(); |
225 OptionsFocusManager.getInstance().initialize(); | 226 OptionsFocusManager.getInstance().initialize(); |
226 Preferences.getInstance().initialize(); | 227 Preferences.getInstance().initialize(); |
227 ResetProfileSettingsBanner.getInstance().initialize(); | 228 ResetProfileSettingsBanner.getInstance().initialize(); |
228 AutomaticSettingsResetBanner.getInstance().initialize(); | 229 AutomaticSettingsResetBanner.getInstance().initialize(); |
229 OptionsPage.initialize(); | 230 OptionsPage.initialize(); |
230 | 231 |
231 var pageName = OptionsPage.getPageNameFromPath(); | 232 var pageName = PageManager.getPageNameFromPath(); |
232 // Still update history so that chrome://settings/nonexistant redirects | 233 // Still update history so that chrome://settings/nonexistant redirects |
233 // appropriately to chrome://settings/. If the URL matches, updateHistory_ | 234 // appropriately to chrome://settings/. If the URL matches, updateHistory_ |
234 // will avoid the extra replaceState. | 235 // will avoid the extra replaceState. |
235 OptionsPage.showPageByName(pageName, true, {replaceState: true}); | 236 PageManager.showPageByName(pageName, true, {replaceState: true}); |
236 | 237 |
237 var subpagesNavTabs = document.querySelectorAll('.subpages-nav-tabs'); | 238 var subpagesNavTabs = document.querySelectorAll('.subpages-nav-tabs'); |
238 for (var i = 0; i < subpagesNavTabs.length; i++) { | 239 for (var i = 0; i < subpagesNavTabs.length; i++) { |
239 subpagesNavTabs[i].onclick = function(event) { | 240 subpagesNavTabs[i].onclick = function(event) { |
240 OptionsPage.showTab(event.srcElement); | 241 OptionsPage.showTab(event.srcElement); |
241 }; | 242 }; |
242 } | 243 } |
243 | 244 |
244 window.setTimeout(function() { | 245 window.setTimeout(function() { |
245 document.documentElement.classList.remove('loading'); | 246 document.documentElement.classList.remove('loading'); |
246 chrome.send('onFinishedLoadingOptions'); | 247 chrome.send('onFinishedLoadingOptions'); |
247 }); | 248 }); |
248 } | 249 } |
249 | 250 |
250 document.documentElement.classList.add('loading'); | 251 document.documentElement.classList.add('loading'); |
251 document.addEventListener('DOMContentLoaded', load); | 252 document.addEventListener('DOMContentLoaded', load); |
252 | 253 |
253 /** | 254 /** |
254 * Listener for the |beforeunload| event. | 255 * Listener for the |beforeunload| event. |
255 */ | 256 */ |
256 window.onbeforeunload = function() { | 257 window.onbeforeunload = function() { |
257 options.OptionsPage.willClose(); | 258 PageManager.willClose(); |
258 }; | 259 }; |
259 | 260 |
260 /** | 261 /** |
261 * Listener for the |popstate| event. | 262 * Listener for the |popstate| event. |
262 * @param {Event} e The |popstate| event. | 263 * @param {Event} e The |popstate| event. |
263 */ | 264 */ |
264 window.onpopstate = function(e) { | 265 window.onpopstate = function(e) { |
265 var pageName = options.OptionsPage.getPageNameFromPath(); | 266 var pageName = PageManager.getPageNameFromPath(); |
266 options.OptionsPage.setState(pageName, e.state); | 267 PageManager.setState(pageName, e.state); |
267 }; | 268 }; |
OLD | NEW |