diff options
Diffstat (limited to 'chromium/chrome/browser/resources/options/controlled_setting.js')
-rw-r--r-- | chromium/chrome/browser/resources/options/controlled_setting.js | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/chromium/chrome/browser/resources/options/controlled_setting.js b/chromium/chrome/browser/resources/options/controlled_setting.js index 28674bd888b..5ac42d971e4 100644 --- a/chromium/chrome/browser/resources/options/controlled_setting.js +++ b/chromium/chrome/browser/resources/options/controlled_setting.js @@ -61,19 +61,9 @@ cr.define('options', function() { if (!this.value || String(event.value.value) == this.value) { this.controlledBy = event.value.controlledBy; if (event.value.extension) { - if (this.pref == 'session.restore_on_startup' || - this.pref == 'homepage_is_newtabpage') { - // Special case for the restore on startup, which is implied - // by the startup pages settings being controlled by an - // extension, and same for the home page as NTP, so we don't want - // to show two buttons in these cases. - // TODO(mad): Find a better way to handle this. - this.controlledBy = null; - } else { - this.extensionId = event.value.extension.id; - this.extensionIcon = event.value.extension.icon; - this.extensionName = event.value.extension.name; - } + this.extensionId = event.value.extension.id; + this.extensionIcon = event.value.extension.icon; + this.extensionName = event.value.extension.name; } } else { this.controlledBy = null; @@ -105,6 +95,10 @@ cr.define('options', function() { 'extensionWithName': loadTimeData.getString( 'controlledSettingsExtensionWithName'), }; + if (cr.isChromeOS) { + defaultStrings.shared = + loadTimeData.getString('controlledSettingsShared'); + } } else { var defaultStrings = { 'policy': loadTimeData.getString('controlledSettingPolicy'), @@ -119,6 +113,8 @@ cr.define('options', function() { if (cr.isChromeOS) { defaultStrings.owner = loadTimeData.getString('controlledSettingOwner'); + defaultStrings.shared = + loadTimeData.getString('controlledSettingShared'); } } @@ -136,8 +132,7 @@ cr.define('options', function() { // Create the DOM tree. var content = document.createElement('div'); - content.className = 'controlled-setting-bubble-content'; - content.setAttribute('controlled-by', this.controlledBy); + content.classList.add('controlled-setting-bubble-header'); content.textContent = text; if (this.controlledBy == 'hasRecommendation' && this.resetHandler_ && @@ -169,13 +164,15 @@ cr.define('options', function() { var manageLink = extensionContainer.querySelector( '.controlled-setting-bubble-extension-manage-link'); + var extensionId = this.extensionId; manageLink.onclick = function() { uber.invokeMethodOnWindow( - window.top, 'showPage', {pageId: 'extensions'}); + window.top, 'showPage', {pageId: 'extensions', + path: '?id=' + extensionId}); }; - var disableButton = extensionContainer.querySelector('button'); - var extensionId = this.extensionId; + var disableButton = extensionContainer.querySelector( + '.controlled-setting-bubble-extension-disable-button'); disableButton.onclick = function() { chrome.send('disableExtension', [extensionId]); }; @@ -223,6 +220,10 @@ cr.define('options', function() { * override this recommendation but has not done so. * - 'hasRecommendation': A value is recommended by policy. The user has * overridden this recommendation. + * - 'owner': A value is controlled by the owner of the device + * (Chrome OS only). + * - 'shared': A value belongs to the primary user but can be + * modified (Chrome OS only). * - unset: The value is controlled by the user alone. * @type {string} */ |