Example #1
0
  addElement(data) {
    var item = document.createElement('li');
    item.classList.add('item', data.type);
    item.innerHTML = this.listItemTemplate(data);
    IconHelper.setImage(item.querySelector('.icon'), data.icon);
    this.el.appendChild(item);

    item.addEventListener('click', function(data, evt) {
      if (evt.target.classList.contains('install-button')) {
        return;
      }
      this.detailsHandlers.forEach(handler => {
        handler(data);
      });
    }.bind(this, data));

    item.querySelector('.install-button').addEventListener('click',
      function(data) {
        this.installHandlers.forEach(handler => {
          handler(data);
        });
      }.bind(this, data));

    return item;
  }
Example #2
0
 updateElement(element, data) {
   element.classList.toggle('installed', data.installed);
   var button = element.querySelector('.install-button');
   button.textContent = data.installed ? 'Open' : 'Install';
   var icon = element.querySelector('.icon');
   if (data.icon && icon.src !== data.icon) {
     IconHelper.setImage(icon, data.icon);
   }
 }
 fillAppDetails(app) {
   var detail = Object.create(null);
   detail.manifestURL = app.manifestURL;
   detail.name = app.manifest.name;
   detail.description = app.manifest.description;
   detail.icon = IconHelper.getIconURL(app, app.manifest.icons);
   detail.author = app.manifest.developer ? app.manifest.developer.name : '';
   detail.app = app;
   return detail;
 }
Example #4
0
 fillAppDetailsFromEntryPoint(app, entry_point) {
   var detail = Object.create(null);
   detail.manifestURL = app.manifestURL;
   detail.description = app.manifest.description;
   detail.author = app.manifest.developer ? app.manifest.developer.name : '';
   detail.app = app;
   detail.name = app.manifest.entry_points[entry_point].name;
   detail.icon = IconHelper.getIconURL(app, app.manifest.entry_points[entry_point].icons);
   detail.entry_point = entry_point;
   return detail;
 }
Example #5
0
  addElement(data) {
    var item = document.createElement('li');
    item.classList.add('app');
    item.innerHTML = Sanitizer.unwrapSafeHTML(this.listItemTemplate(data));
    IconHelper.setImage(item.querySelector('.icon'), data.icon);
    this.el.appendChild(item);

    item.querySelector('.open-button').addEventListener('click',
      function(data) {
        this.openHandler(data);
      }.bind(this, data));

    return item;
  }