diff options
Diffstat (limited to 'chromium/chrome/browser/resources/extensions')
10 files changed, 156 insertions, 86 deletions
diff --git a/chromium/chrome/browser/resources/extensions/BUILD.gn b/chromium/chrome/browser/resources/extensions/BUILD.gn index 1798f6238a7..734470fdaf4 100644 --- a/chromium/chrome/browser/resources/extensions/BUILD.gn +++ b/chromium/chrome/browser/resources/extensions/BUILD.gn @@ -7,46 +7,48 @@ import("//third_party/closure_compiler/compile_js.gni") import("//tools/grit/grit_rule.gni") import("../optimize_webui.gni") -extensions_pak_file = "extensions_resources.pak" -unpak_folder = "extensions_resources.unpak" - -optimize_webui("build") { - host = "extensions" - html_in_files = [ "extensions.html" ] - html_out_files = [ "vulcanized.html" ] - insert_in_head = "<base href=\"chrome://extensions\">" - input = rebase_path("$target_gen_dir/$unpak_folder", root_build_dir) - js_out_files = [ "crisper.js" ] - replace_for_html_imports_polyfill = "crisper.js" - - deps = [ - ":unpak", - ] -} - -unpak("unpak") { - pak_file = extensions_pak_file - out_folder = unpak_folder - - deps = [ - ":flattened_resources", - ] -} - -grit("flattened_resources") { - source = "extensions_resources.grd" - - # The .grd contains references to generated files. - source_is_generated = true - - defines = chrome_grit_defines - outputs = [ - "grit/extensions_resources.h", - "grit/extensions_resources_map.cc", - "grit/extensions_resources_map.h", - extensions_pak_file, - ] - output_dir = "$root_gen_dir/chrome/browser/resources/extensions" +if (optimize_webui) { + extensions_pak_file = "extensions_resources.pak" + unpak_folder = "extensions_resources.unpak" + + optimize_webui("build") { + host = "extensions" + html_in_files = [ "extensions.html" ] + html_out_files = [ "vulcanized.html" ] + insert_in_head = "<base href=\"chrome://extensions\">" + input = rebase_path("$target_gen_dir/$unpak_folder", root_build_dir) + js_out_files = [ "crisper.js" ] + replace_for_html_imports_polyfill = "crisper.js" + + deps = [ + ":unpak", + ] + } + + unpak("unpak") { + pak_file = extensions_pak_file + out_folder = unpak_folder + + deps = [ + ":flattened_resources", + ] + } + + grit("flattened_resources") { + source = "extensions_resources.grd" + + # The .grd contains references to generated files. + source_is_generated = true + + defines = chrome_grit_defines + outputs = [ + "grit/extensions_resources.h", + "grit/extensions_resources_map.cc", + "grit/extensions_resources_map.h", + extensions_pak_file, + ] + output_dir = "$root_gen_dir/chrome/browser/resources/extensions" + } } group("closure_compile") { @@ -69,6 +71,7 @@ js_type_check("extensions_resources") { ":item_behavior", ":item_list", ":item_util", + ":keyboard_shortcut_delegate", ":keyboard_shortcuts", ":kiosk_browser_proxy", ":kiosk_dialog", @@ -207,9 +210,17 @@ js_library("item_util") { externs_list = [ "$externs_path/developer_private.js" ] } +js_library("keyboard_shortcut_delegate") { + deps = [ + "//ui/webui/resources/js:cr", + ] + externs_list = [ "$externs_path/developer_private.js" ] +} + js_library("keyboard_shortcuts") { deps = [ ":item_behavior", + ":keyboard_shortcut_delegate", "//ui/webui/resources/cr_elements:cr_container_shadow_behavior", "//ui/webui/resources/js:assert", "//ui/webui/resources/js:cr", @@ -324,6 +335,7 @@ js_library("service") { deps = [ ":error_page", ":item", + ":keyboard_shortcut_delegate", ":load_error", ":navigation_helper", ":pack_dialog", @@ -345,6 +357,7 @@ js_library("service") { js_library("shortcut_input") { deps = [ + ":keyboard_shortcut_delegate", ":shortcut_util", "//ui/webui/resources/js:assert", "//ui/webui/resources/js:cr", diff --git a/chromium/chrome/browser/resources/extensions/detail_view.html b/chromium/chrome/browser/resources/extensions/detail_view.html index df4e5baf623..23cdc7bc32e 100644 --- a/chromium/chrome/browser/resources/extensions/detail_view.html +++ b/chromium/chrome/browser/resources/extensions/detail_view.html @@ -178,7 +178,9 @@ data.type, '$i18nPolymer{appIcon}', '$i18nPolymer{extensionIcon}')]]"> - <span id="name" class="cr-title-text">[[data.name]]</span> + <span id="name" class="cr-title-text" role="heading" aria-level="1"> + [[data.name]] + </span> </div> <div class="section continuation control-line" id="enable-section"> <span class$="[[computeEnabledStyle_(data.state)]]"> @@ -258,17 +260,23 @@ </div> </div> <div class="section continuation block"> - <div class="section-title">$i18n{itemDescriptionLabel}</div> + <div class="section-title" role="heading" aria-level="2"> + $i18n{itemDescriptionLabel} + </div> <div class="section-content" id="description"> [[getDescription_(data.description, '$i18nPolymer{noDescription}')]] </div> </div> <div class="section block"> - <div class="section-title">$i18n{itemVersion}</div> + <div class="section-title" role="heading" aria-level="2"> + $i18n{itemVersion} + </div> <div class="section-content">[[data.version]]</div> </div> <div class="section block"> - <div class="section-title">$i18n{itemSize}</div> + <div class="section-title" role="heading" aria-level="2"> + $i18n{itemSize} + </div> <div class="section-content" id="size"> <span>[[size_]]</span> <paper-spinner-lite active="[[!size_]]" hidden="[[size_]]"> @@ -276,12 +284,16 @@ </div> </div> <div class="section block" id="id-section" hidden$="[[!inDevMode]]"> - <div class="section-title">$i18n{itemIdHeading}</div> + <div class="section-title" role="heading" aria-level="2"> + $i18n{itemIdHeading} + </div> <div class="section-content">[[data.id]]</div> </div> <template is="dom-if" if="[[inDevMode]]"> <div class="section block" id="inspectable-views"> - <div class="section-title">$i18n{itemInspectViews}</div> + <div class="section-title" role="heading" aria-level="2"> + $i18n{itemInspectViews} + </div> <div class="section-content"> <ul id="inspect-views"> <li hidden="[[data.views.length]]"> @@ -300,7 +312,9 @@ </div> </template> <div class="section block"> - <div class="section-title">$i18n{itemPermissions}</div> + <div class="section-title" role="heading" aria-level="2"> + $i18n{itemPermissions} + </div> <div class="section-content"> <span id="no-permissions" hidden$="[[hasPermissions_(data.*)]]"> $i18n{itemPermissionsEmpty} @@ -322,7 +336,9 @@ </div> </div> <div class="section block"> - <div class="section-title">$i18n{itemSiteAccess}</div> + <div class="section-title" role="heading" aria-level="2"> + $i18n{itemSiteAccess} + </div> <div class="section-content"> <span id="no-site-access" hidden$="[[showSiteAccessContent_(data.*)]]"> @@ -349,7 +365,9 @@ <template is="dom-if" if="[[hasDependentExtensions_(data.dependentExtensions.splices)]]"> <div class="section block"> - <div class="section-title">$i18n{itemDependencies}</div> + <div class="section-title" role="heading" aria-level="2"> + $i18n{itemDependencies} + </div> <div class="section-content"> <ul id="dependent-extensions-list"> <template is="dom-repeat" items="[[data.dependentExtensions]]"> @@ -405,7 +423,9 @@ id="viewInStore" label="$i18n{viewInStore}" on-click="onViewInStoreTap_" external></cr-link-row> <div class="section block"> - <div class="section-title">$i18n{itemSource}</div> + <div class="section-title" role="heading" aria-level="2"> + $i18n{itemSource} + </div> <div id="source" class="section-content"> [[computeSourceString_(data.*)]] </div> diff --git a/chromium/chrome/browser/resources/extensions/extensions.html b/chromium/chrome/browser/resources/extensions/extensions.html index 83ea4fe724a..832434023d9 100644 --- a/chromium/chrome/browser/resources/extensions/extensions.html +++ b/chromium/chrome/browser/resources/extensions/extensions.html @@ -61,6 +61,6 @@ </script> <extensions-manager></extensions-manager> <link rel="stylesheet" href="chrome://resources/css/text_defaults_md.css"> - <link rel="import" href="chrome://extensions/manager.html"> + <link rel="import" href="manager.html"> </body> </html> diff --git a/chromium/chrome/browser/resources/extensions/extensions_resources.grd b/chromium/chrome/browser/resources/extensions/extensions_resources.grd index 1bb6baea7c5..9201c338087 100644 --- a/chromium/chrome/browser/resources/extensions/extensions_resources.grd +++ b/chromium/chrome/browser/resources/extensions/extensions_resources.grd @@ -85,6 +85,12 @@ <structure name="IDR_EXTENSIONS_ERROR_PAGE_JS" file="error_page.js" type="chrome_html" /> + <structure name="IDR_EXTENSIONS_KEYBOARD_SHORTCUT_DELEGATE_HTML" + file="keyboard_shortcut_delegate.html" + type="chrome_html" /> + <structure name="IDR_EXTENSIONS_KEYBOARD_SHORTCUT_DELEGATE_JS" + file="keyboard_shortcut_delegate.js" + type="chrome_html" /> <structure name="IDR_EXTENSIONS_KEYBOARD_SHORTCUTS_HTML" file="keyboard_shortcuts.html" type="chrome_html" /> diff --git a/chromium/chrome/browser/resources/extensions/keyboard_shortcut_delegate.html b/chromium/chrome/browser/resources/extensions/keyboard_shortcut_delegate.html new file mode 100644 index 00000000000..bb851cf9c59 --- /dev/null +++ b/chromium/chrome/browser/resources/extensions/keyboard_shortcut_delegate.html @@ -0,0 +1 @@ +<script src="keyboard_shortcut_delegate.js"></script> diff --git a/chromium/chrome/browser/resources/extensions/keyboard_shortcut_delegate.js b/chromium/chrome/browser/resources/extensions/keyboard_shortcut_delegate.js new file mode 100644 index 00000000000..d83e47926d3 --- /dev/null +++ b/chromium/chrome/browser/resources/extensions/keyboard_shortcut_delegate.js @@ -0,0 +1,41 @@ +// Copyright 2016 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.define('extensions', function() { + 'use strict'; + + /** @interface */ + class KeyboardShortcutDelegate { + /** + * Called when shortcut capturing changes in order to suspend or re-enable + * global shortcut handling. This is important so that the shortcuts aren't + * processed normally as the user types them. + * TODO(devlin): From very brief experimentation, it looks like preventing + * the default handling on the event also does this. Investigate more in the + * future. + * @param {boolean} isCapturing + */ + setShortcutHandlingSuspended(isCapturing) {} + + /** + * Updates an extension command's keybinding. + * @param {string} extensionId + * @param {string} commandName + * @param {string} keybinding + */ + updateExtensionCommandKeybinding(extensionId, commandName, keybinding) {} + + /** + * Updates an extension command's scope. + * @param {string} extensionId + * @param {string} commandName + * @param {chrome.developerPrivate.CommandScope} scope + */ + updateExtensionCommandScope(extensionId, commandName, scope) {} + } + + return { + KeyboardShortcutDelegate: KeyboardShortcutDelegate, + }; +}); diff --git a/chromium/chrome/browser/resources/extensions/keyboard_shortcuts.html b/chromium/chrome/browser/resources/extensions/keyboard_shortcuts.html index 73968d69f68..cc985093d80 100644 --- a/chromium/chrome/browser/resources/extensions/keyboard_shortcuts.html +++ b/chromium/chrome/browser/resources/extensions/keyboard_shortcuts.html @@ -7,6 +7,7 @@ <link rel="import" href="chrome://resources/cr_elements/md_select_css.html"> <link rel="import" href="chrome://resources/polymer/v1_0/paper-styles/color.html"> <link rel="import" href="item_behavior.html"> +<link rel="import" href="keyboard_shortcut_delegate.html"> <link rel="import" href="shortcut_input.html"> <dom-module id="extensions-keyboard-shortcuts"> diff --git a/chromium/chrome/browser/resources/extensions/keyboard_shortcuts.js b/chromium/chrome/browser/resources/extensions/keyboard_shortcuts.js index c740d566ea3..f0716526957 100644 --- a/chromium/chrome/browser/resources/extensions/keyboard_shortcuts.js +++ b/chromium/chrome/browser/resources/extensions/keyboard_shortcuts.js @@ -5,36 +5,6 @@ cr.define('extensions', function() { 'use strict'; - /** @interface */ - class KeyboardShortcutDelegate { - /** - * Called when shortcut capturing changes in order to suspend or re-enable - * global shortcut handling. This is important so that the shortcuts aren't - * processed normally as the user types them. - * TODO(devlin): From very brief experimentation, it looks like preventing - * the default handling on the event also does this. Investigate more in the - * future. - * @param {boolean} isCapturing - */ - setShortcutHandlingSuspended(isCapturing) {} - - /** - * Updates an extension command's keybinding. - * @param {string} extensionId - * @param {string} commandName - * @param {string} keybinding - */ - updateExtensionCommandKeybinding(extensionId, commandName, keybinding) {} - - /** - * Updates an extension command's scope. - * @param {string} extensionId - * @param {string} commandName - * @param {chrome.developerPrivate.CommandScope} scope - */ - updateExtensionCommandScope(extensionId, commandName, scope) {} - } - // The UI to display and manage keyboard shortcuts set for extension commands. const KeyboardShortcuts = Polymer({ is: 'extensions-keyboard-shortcuts', @@ -127,7 +97,6 @@ cr.define('extensions', function() { }); return { - KeyboardShortcutDelegate: KeyboardShortcutDelegate, KeyboardShortcuts: KeyboardShortcuts, }; }); diff --git a/chromium/chrome/browser/resources/extensions/toolbar.html b/chromium/chrome/browser/resources/extensions/toolbar.html index 9b8706bd762..38cf1124e61 100644 --- a/chromium/chrome/browser/resources/extensions/toolbar.html +++ b/chromium/chrome/browser/resources/extensions/toolbar.html @@ -97,10 +97,11 @@ narrow-threshold="1000"> <div class="more-actions"> <span id="devModeLabel">$i18n{toolbarDevMode}</span> - <cr-tooltip-icon hidden$="[[!devModeControlledByPolicy]]" - tooltip-text="$i18n{controlledSettingPolicy}" - icon-class="cr20:domain" - icon-aria-label="$i18n{controlledSettingPolicy}"> + <cr-tooltip-icon hidden="[[!shouldDisableDevMode_( + devModeControlledByPolicy, isSupervised)]]" + tooltip-text="[[getTooltipText_(isSupervised)]]" + icon-class="[[getIcon_(isSupervised)]]" + icon-aria-label="[[getTooltipText_(isSupervised)]]"> </cr-tooltip-icon> <cr-toggle id="devMode" on-change="onDevModeToggleChange_" disabled="[[shouldDisableDevMode_( diff --git a/chromium/chrome/browser/resources/extensions/toolbar.js b/chromium/chrome/browser/resources/extensions/toolbar.js index bd3590edcba..228cc45667d 100644 --- a/chromium/chrome/browser/resources/extensions/toolbar.js +++ b/chromium/chrome/browser/resources/extensions/toolbar.js @@ -76,6 +76,24 @@ cr.define('extensions', function() { }, /** + * @return {string} + * @private + */ + getTooltipText_: function() { + return this.i18n( + this.isSupervised ? 'controlledSettingChildRestriction' : + 'controlledSettingPolicy'); + }, + + /** + * @return {string} + * @private + */ + getIcon_: function() { + return this.isSupervised ? 'cr20:kite' : 'cr20:domain'; + }, + + /** * @param {!CustomEvent<boolean>} e * @private */ |