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.
This commit is contained in:
parent
93e3a48004
commit
b38dea0597
25901 changed files with 9982925 additions and 369 deletions
|
|
@ -0,0 +1,5 @@
|
|||
|
||||
define(['require','modules/settings_service','modules/mvvm/list_view','panels/addons/addons_template','modules/mvvm/observable_array'],function(require){'use strict';var SettingsService=require('modules/settings_service');var ListView=require('modules/mvvm/list_view');var AddonItemTemplateFactory=require('panels/addons/addons_template');var ObservableArray=require('modules/mvvm/observable_array');function AddonsList(root,manager){this._enabled=false;this._listRoot=root;this._addonManager=manager;this._addons=ObservableArray(this._sortByName(this._addonManager.addons.array));['insert','remove'].forEach(e=>this._addonManager.addons.addEventListener(e,this._update.bind(this)));var addonTemplate=AddonItemTemplateFactory(function onClick(addon){SettingsService.navigate('addon-details',{addon:addon});});this._listView=ListView(this._listRoot,this._addons,addonTemplate);}
|
||||
AddonsList.prototype={set enabled(value){if(value!==this._enabled){this._listView.enabled=this._enabled=value;}},_sortByName:function(addons){return addons.sort((a,b)=>{return a._app.manifest.name.localeCompare(b._app.manifest.name);});},_update:function(){return this._filter?Promise.all(this._addonManager.addons.array.map(addon=>this._addonManager.addonAffectsApp(addon,this._filter).then(affects=>affects?addon:undefined))).then(addons=>this._addons.reset(this._sortByName(addons.filter(addon=>addon)))):Promise.resolve(this._addons.reset(this._sortByName(this._addonManager.addons.array)));},setFilter:function(manifestURL){if(!manifestURL){return Promise.resolve();}
|
||||
this._filter=manifestURL;return this._update();},unsetFilter:function(){if(!this._filter){return Promise.resolve();}
|
||||
delete this._filter;return this._update();}};return function ctor_addons_list(root,manager){return new AddonsList(root,manager);};});
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
|
||||
define(['require','shared/manifest_helper'],function(require){'use strict';var ManifestHelper=require('shared/manifest_helper');const PREFERRED_ICON_SIZE=30*(window.devicePixelRatio||1);function addonsTemplate(onClick,addon,recycled){var manifest=new ManifestHelper(addon.instance.manifest||addon.instance.updateManifest);var container=null;var link,span,small,icon;if(recycled){container=recycled;link=container.querySelector('a');span=container.querySelector('span');small=container.querySelector('small');icon=container.querySelector('img');}else{container=document.createElement('li');link=document.createElement('a');span=document.createElement('span');small=document.createElement('small');icon=document.createElement('img');link.href='#';link.classList.add('menu-item');small.classList.add('menu-item-desc');link.appendChild(icon);link.appendChild(span);link.appendChild(small);container.appendChild(link);}
|
||||
navigator.mozApps.mgmt.getIcon(addon.instance,PREFERRED_ICON_SIZE).then((blob)=>{icon.src=URL.createObjectURL(blob);}).catch(()=>{icon.src='../style/images/default.png';});span.textContent=manifest.displayName;small.setAttribute('data-l10n-id',addon.enabled?'enabled':'disabled');addon.observe('enabled',function(enabled){small.setAttribute('data-l10n-id',enabled?'enabled':'disabled');});link.onclick=()=>{onClick(addon);};return container;}
|
||||
return function ctor_addonsTemplate(onClick){return addonsTemplate.bind(null,onClick);};});
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
|
||||
define(['require','modules/settings_panel','modules/addon_manager','panels/addons/addons_list'],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();var activity=new window.MozActivity({name:'marketplace-category',data:{slug:'addons'}});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);}});};});
|
||||
Loading…
Reference in a new issue