| Index: chrome/browser/resources/extensions/extensions.js
|
| diff --git a/chrome/browser/resources/extensions/extensions.js b/chrome/browser/resources/extensions/extensions.js
|
| index d8c236dfe9612233b42b532ba9926c848c15125d..26fd5ac45764a6d5ce106e1cacaf3c17bd5cebd2 100644
|
| --- a/chrome/browser/resources/extensions/extensions.js
|
| +++ b/chrome/browser/resources/extensions/extensions.js
|
| @@ -133,6 +133,9 @@ cr.define('extensions', function() {
|
| // Set the title.
|
| uber.setTitle(loadTimeData.getString('extensionSettings'));
|
|
|
| + var extensionList = $('extension-settings-list');
|
| + ExtensionList.decorate(extensionList);
|
| +
|
| // This will request the data to show on the page and will get a response
|
| // back in returnExtensionsData.
|
| chrome.send('extensionSettingsRequestExtensionsData');
|
| @@ -141,7 +144,7 @@ cr.define('extensions', function() {
|
|
|
| $('toggle-dev-on').addEventListener('change', function(e) {
|
| this.updateDevControlsVisibility_(true);
|
| - $('extension-settings-list').updateFocusableElements();
|
| + extensionList.updateFocusableElements();
|
| chrome.send('extensionSettingsToggleDeveloperMode',
|
| [$('toggle-dev-on').checked]);
|
| }.bind(this));
|
| @@ -298,15 +301,6 @@ cr.define('extensions', function() {
|
| * @param {ExtensionDataResponse} extensionsData
|
| */
|
| ExtensionSettings.returnExtensionsData = function(extensionsData) {
|
| - // We can get called many times in short order, thus we need to
|
| - // be careful to remove the 'finished loading' timeout.
|
| - if (this.loadingTimeout_)
|
| - window.clearTimeout(this.loadingTimeout_);
|
| - document.documentElement.classList.add('loading');
|
| - this.loadingTimeout_ = window.setTimeout(function() {
|
| - document.documentElement.classList.remove('loading');
|
| - }, 0);
|
| -
|
| webuiResponded = true;
|
|
|
| var supervised = extensionsData.profileIsSupervised;
|
| @@ -324,9 +318,15 @@ cr.define('extensions', function() {
|
| instance.updateDevControlsVisibility_(false);
|
|
|
| $('load-unpacked').disabled = extensionsData.loadUnpackedDisabled;
|
| -
|
| - ExtensionList.prototype.data_ = extensionsData;
|
| - ExtensionList.decorate($('extension-settings-list'));
|
| + var extensionList = $('extension-settings-list');
|
| + extensionList.updateExtensionsData(
|
| + extensionsData.incognitoAvailable,
|
| + extensionsData.enableAppInfoDialog).then(function() {
|
| + var hasExtensions = extensionList.getNumExtensions() != 0;
|
| + extensionList.hidden = !hasExtensions;
|
| + $('no-extensions').hidden = hasExtensions;
|
| + $('footer-section').hidden = !hasExtensions;
|
| + });
|
| };
|
|
|
| /**
|
|
|