Chromium Code Reviews| Index: chrome/browser/resources/options/reset_profile_settings_banner.js |
| diff --git a/chrome/browser/resources/options/reset_profile_settings_banner.js b/chrome/browser/resources/options/reset_profile_settings_banner.js |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..1011e03bb59e128f8a32c784f072fb1a5caabe27 |
| --- /dev/null |
| +++ b/chrome/browser/resources/options/reset_profile_settings_banner.js |
| @@ -0,0 +1,62 @@ |
| +// Copyright 2013 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +// Note: the native-side handler for this is ResetProfileSettingsHandler. |
| + |
| +cr.define('options', function() { |
| + /** @const */ var PageManager = cr.ui.pageManager.PageManager; |
| + /** @const */ var SettingsBannerBase = options.SettingsBannerBase; |
| + |
| + /** |
| + * ResetProfileSettingsBanner class |
| + * Provides encapsulated handling of the Reset Profile Settings banner. |
| + * @constructor |
| + */ |
| + function ResetProfileSettingsBanner() {} |
| + |
| + cr.addSingletonGetter(ResetProfileSettingsBanner); |
| + |
| + ResetProfileSettingsBanner.prototype = { |
| + __proto__: SettingsBannerBase.prototype, |
| + |
| + /** |
| + * Initializes the banner's event handlers. |
| + */ |
| + initialize: function() { |
| + this.showMetricName_ = 'AutomaticReset_WebUIBanner_BannerShown'; |
|
Dan Beam
2014/09/05 19:21:45
don't @override private members. either change th
engedy
2014/09/10 13:46:26
Done, made it @protected.
|
| + |
| + this.dismissNativeCallbackName_ = |
| + 'onDismissedResetProfileSettingsBanner'; |
| + |
| + this.setVisibilibyDomElement_ = $('reset-profile-settings-banner'); |
|
Dan Beam
2014/09/05 19:21:45
Visibiliby -> Visibility
engedy
2014/09/10 13:46:25
Done, replaced 4 occurrences.
|
| + |
| + $('reset-profile-settings-banner-close').onclick = function(event) { |
| + chrome.send('metricsHandler:recordAction', |
| + ['AutomaticReset_WebUIBanner_ManuallyClosed']); |
| + ResetProfileSettingsBanner.dismiss(); |
| + }; |
| + $('reset-profile-settings-banner-activate').onclick = function(event) { |
| + chrome.send('metricsHandler:recordAction', |
| + ['AutomaticReset_WebUIBanner_ResetClicked']); |
| + PageManager.showPageByName('resetProfileSettings'); |
| + }; |
| + }, |
| + }; |
| + |
| + // Forward public APIs to private implementations. |
| + [ |
| + 'show', |
| + 'dismiss', |
| + ].forEach(function(name) { |
| + ResetProfileSettingsBanner[name] = function() { |
| + var instance = ResetProfileSettingsBanner.getInstance(); |
| + return instance[name + '_'].apply(instance, arguments); |
| + }; |
| + }); |
| + |
| + // Export |
| + return { |
| + ResetProfileSettingsBanner: ResetProfileSettingsBanner |
| + }; |
| +}); |