diff options
Diffstat (limited to 'chromium/chrome/browser/resources/options/automatic_settings_reset_banner.js')
-rw-r--r-- | chromium/chrome/browser/resources/options/automatic_settings_reset_banner.js | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/chromium/chrome/browser/resources/options/automatic_settings_reset_banner.js b/chromium/chrome/browser/resources/options/automatic_settings_reset_banner.js new file mode 100644 index 00000000000..15877ad4b7f --- /dev/null +++ b/chromium/chrome/browser/resources/options/automatic_settings_reset_banner.js @@ -0,0 +1,60 @@ +// Copyright 2014 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 AutomaticSettingsResetHandler. + +cr.define('options', function() { + /** @const */ var SettingsBannerBase = options.SettingsBannerBase; + + /** + * AutomaticSettingsResetBanner class + * Provides encapsulated handling of the Reset Profile Settings banner. + * @constructor + */ + function AutomaticSettingsResetBanner() {} + + cr.addSingletonGetter(AutomaticSettingsResetBanner); + + AutomaticSettingsResetBanner.prototype = { + __proto__: SettingsBannerBase.prototype, + + /** + * Initializes the banner's event handlers. + */ + initialize: function() { + this.showMetricName_ = 'AutomaticSettingsReset_WebUIBanner_BannerShown'; + + this.dismissNativeCallbackName_ = + 'onDismissedAutomaticSettingsResetBanner'; + + this.setVisibilibyDomElement_ = $('automatic-settings-reset-banner'); + + $('automatic-settings-reset-banner-close').onclick = function(event) { + chrome.send('metricsHandler:recordAction', + ['AutomaticSettingsReset_WebUIBanner_ManuallyClosed']); + AutomaticSettingsResetBanner.dismiss(); + }; + $('automatic-settings-reset-learn-more').onclick = function(event) { + chrome.send('metricsHandler:recordAction', + ['AutomaticSettingsReset_WebUIBanner_LearnMoreClicked']); + }; + }, + }; + + // Forward public APIs to private implementations. + [ + 'show', + 'dismiss', + ].forEach(function(name) { + AutomaticSettingsResetBanner[name] = function() { + var instance = AutomaticSettingsResetBanner.getInstance(); + return instance[name + '_'].apply(instance, arguments); + }; + }); + + // Export + return { + AutomaticSettingsResetBanner: AutomaticSettingsResetBanner + }; +}); |