Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2319)

Unified Diff: chrome/browser/resources/settings/default_browser_page/default_browser_page.js

Issue 1388353003: [MD settings] adding DefaultBrowser settings page (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review changes Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/resources/settings/default_browser_page/default_browser_page.js
diff --git a/chrome/browser/resources/settings/default_browser_page/default_browser_page.js b/chrome/browser/resources/settings/default_browser_page/default_browser_page.js
new file mode 100644
index 0000000000000000000000000000000000000000..a47ad889293174e5c929a07c8bcd4b8cd566bcfe
--- /dev/null
+++ b/chrome/browser/resources/settings/default_browser_page/default_browser_page.js
@@ -0,0 +1,105 @@
+// Copyright 2015 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.
+
+/**
+ * @fileoverview
+ * 'settings-default-browser-page' is the settings page that contains
+ * settings to change the default browser (i.e. which the OS will open).
+ *
+ * Example:
+ *
+ * <iron-animated-pages>
+ * <settings-default-browser-page>
+ * </settings-default-browser-page>
+ * ... other pages ...
+ * </iron-animated-pages>
+ *
+ * @group Chrome Settings Elements
+ * @element settings-default-browser-page
+ */
+Polymer({
+ is: 'settings-default-browser-page',
+
+ properties: {
+ /**
+ * The current active route.
+ */
+ currentRoute: {
+ type: Object,
+ notify: true,
+ },
+
+ /**
+ * A message about whether Chrome is the default browser.
+ */
+ message_: {
+ type: String,
+ },
+
+ /**
+ * Show or hide an error indicator showing whether SetAsDefault succeeded.
+ */
+ showError_: {
+ type: Boolean,
+ value: false,
+ },
+
+ /**
+ * Only show the SetAsDefault button if we have permission to set it.
+ */
+ showButton_: {
+ type: Boolean,
+ },
+ },
+
+ behaviors: [
+ I18nBehavior,
+ ],
+
+ ready: function() {
+ var self = this;
+ cr.define('Settings', function() {
+ return {
+ setAsDefaultConcluded: function() {
+ return self.setAsDefaultConcluded_.apply(self, arguments);
+ },
+ updateDefaultBrowserState: function() {
+ return self.updateDefaultBrowserState_.apply(self, arguments);
+ },
+ };
+ });
+ chrome.send('SettingsDefaultBrowser.requestDefaultBrowserState');
+ },
+
+ /**
+ * @param {boolean} succeeded
+ * @private
+ */
+ setAsDefaultConcluded_: function(succeeded) {
+ this.showError_ = !succeeded;
+ },
+
+ /**
+ * @param {boolean} isDefault Whether Chrome is currently the user's default
+ * browser.
+ * @param {boolean} canBeDefault Whether Chrome can be the default browser on
+ * this system.
+ * @private
+ */
+ updateDefaultBrowserState_: function(isDefault, canBeDefault) {
+ this.showButton_ = !isDefault && canBeDefault;
+ if (canBeDefault) {
+ this.message_ = loadTimeData.getString(isDefault ?
+ 'defaultBroswerDefault' :
+ 'defaultBroswerNotDefault');
+ } else {
+ this.message_ = loadTimeData.getString('defaultBroswerUnknown');
+ }
+ },
+
+ /** @private */
+ onSetDefaultBrowserTap_: function() {
+ chrome.send('SettingsDefaultBrowser.setAsDefaultBrowser');
+ },
+});

Powered by Google App Engine
This is Rietveld 408576698