VulpesOS/gaia/apps/settings/js/panels/addons/panel.js
OverSu b38dea0597 Publish Vulpes Preview 15 sources for desktop, Android and Tundra
Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
2026-09-30 23:13:03 +02:00

44 lines
1.3 KiB
JavaScript
Executable file

define(function(require) {
'use strict';
var SettingsPanel = require('modules/settings_panel');
var AddonManager = require('modules/addon_manager');
var AddonsList = require('panels/addons/addons_list');
return function ctor_addons_panel() {
var addonsList;
return SettingsPanel({
onInit: function(panel) {
var listElement = panel.querySelector('.addon-list');
var moreLink = panel.querySelector('.get-more-addons');
addonsList = AddonsList(listElement, AddonManager);
moreLink.addEventListener('click', function() {
moreLink.blur();
// The addons list panel will update itself if new addon is installed.
var activity = new window.MozActivity({
name: 'marketplace-category',
data: { slug: 'addons' }
});
// For workaround jshint.
activity.onsuccess = function() {};
});
},
onBeforeShow: function(panel, options) {
if (options && options.manifestURL) {
return addonsList.setFilter(options.manifestURL).then(() =>
addonsList.enabled = true);
} else {
addonsList.enabled = true;
}
},
onBeforeHide: function() {
return addonsList.unsetFilter().then(() =>
addonsList.enabled = false);
}
});
};
});