diff options
Diffstat (limited to 'chromium/chrome/browser/resources/settings/appearance_page')
3 files changed, 174 insertions, 0 deletions
diff --git a/chromium/chrome/browser/resources/settings/appearance_page/appearance_page.css b/chromium/chrome/browser/resources/settings/appearance_page/appearance_page.css new file mode 100644 index 00000000000..b22440b2225 --- /dev/null +++ b/chromium/chrome/browser/resources/settings/appearance_page/appearance_page.css @@ -0,0 +1,30 @@ +/* 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. */ + + #change-home-page-section { + -webkit-margin-start: 40px; + font-size: 90%; +} + +/* TODO(jhawkins): This does not span the width of the entire paper-material + * element because our styling of all paper-material includes a fixed margin. + * This can be fixed by creating a generic content container inside of each + * paper-material which would have this margin instead. + * + * TODO(jhawkins): Share this rule set at a higher level, e.g., to share with + * the device page. + */ +hr { + width: 100%; +} + +#action-container { + display: flex; + flex-direction: row; + justify-content: flex-end; +} + +#action-container > paper-button { + text-transform: upper-case; +}
\ No newline at end of file diff --git a/chromium/chrome/browser/resources/settings/appearance_page/appearance_page.html b/chromium/chrome/browser/resources/settings/appearance_page/appearance_page.html new file mode 100644 index 00000000000..0727be83921 --- /dev/null +++ b/chromium/chrome/browser/resources/settings/appearance_page/appearance_page.html @@ -0,0 +1,43 @@ +<link rel="import" href="chrome://resources/polymer/v1_0/polymer/polymer.html"> +<link rel="import" href="chrome://resources/polymer/v1_0/paper-material/paper-material.html"> +<link rel="import" href="chrome://md-settings/checkbox/checkbox.html"> + +<dom-module id="cr-settings-appearance-page"> + <link rel="import" type="css" + href="chrome://md-settings/settings_page/settings_page.css"> + <link rel="import" type="css" + href="chrome://md-settings/appearance_page/appearance_page.css"> + <link rel="import" type="css" href="chrome://resources/css/widgets.css"> + <link rel="import" href="chrome://resources/html/action_link.html"> + <template> + <paper-material> + <div id="action-container"> + <cr-button i18n-content="setWallpaper"></cr-button> + <cr-button id="get-themes" i18n-content="getThemes" + on-click="openThemesGallery_"> + </cr-button> + <cr-button id="resetTheme" i18n-content="resetToDefaultTheme" disabled + on-click="resetTheme_"> + </cr-button> + </div> + <hr> + <cr-settings-checkbox pref="{{prefs.browser.show_home_button}}" + i18n-values="label:showHomeButton"> + </cr-settings-checkbox> + <div id="change-home-page-section" + hidden$="[[!prefs.browser.show_home_button.value]]"> + <div id="change-home-page-section-container"> + <span id="home-page-ntp" i18n-content="homePageNtp"></span> + <span id="home-page-url"></span> + <a is="action-link" id="change-home-page" + i18n-content="changeHomePage"> + </a> + </div> + </div> + <cr-settings-checkbox pref="{{prefs.bookmark_bar.show_on_all_tabs}}" + i18n-values="label:showBookmarksBar"> + </cr-settings-checkbox> + </paper-material> + </template> + <script src="appearance_page.js"></script> +</dom-module> diff --git a/chromium/chrome/browser/resources/settings/appearance_page/appearance_page.js b/chromium/chrome/browser/resources/settings/appearance_page/appearance_page.js new file mode 100644 index 00000000000..03230651dd8 --- /dev/null +++ b/chromium/chrome/browser/resources/settings/appearance_page/appearance_page.js @@ -0,0 +1,101 @@ +// 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. + + + +/** + * 'cr-settings-appearance-page' is the settings page containing appearance + * settings. + * + * Example: + * + * <iron-animated-pages> + * <cr-settings-appearance-page prefs="{{prefs}}"> + * </cr-settings-appearance-page> + * ... other pages ... + * </iron-animated-pages> + * + * @group Chrome Settings Elements + * @element cr-settings-appearance-page + */ +Polymer({ + is: 'cr-settings-appearance-page', + + /** @override */ + attached: function() { + // Query the initial state. + cr.sendWithCallback('getResetThemeEnabled', undefined, + this.setResetThemeEnabled.bind(this)); + + // Set up the change event listener. + cr.addWebUIListener('reset-theme-enabled-changed', + this.setResetThemeEnabled.bind(this)); + }, + + properties: { + /** + * Preferences state. + */ + prefs: { + type: Object, + notify: true, + }, + + /** + * Route for the page. + */ + route: String, + + /** + * Whether the page is a subpage. + */ + subpage: { + type: Boolean, + value: false, + readOnly: true, + }, + + /** + * ID of the page. + */ + PAGE_ID: { + type: String, + value: 'appearance', + readOnly: true, + }, + + /** + * Title for the page header and navigation menu. + */ + pageTitle: { + type: String, + value: function() { + return loadTimeData.getString('appearancePageTitle'); + }, + }, + + /** + * Name of the 'iron-icon' to show. + */ + icon: { + type: String, + value: 'home', + readOnly: true, + }, + }, + + setResetThemeEnabled: function(enabled) { + this.$.resetTheme.disabled = !enabled; + }, + + /** @private */ + openThemesGallery_: function() { + window.open(loadTimeData.getString('themesGalleryUrl')); + }, + + /** @private */ + resetTheme_: function() { + chrome.send('resetTheme'); + }, +}); |