fire(event, ...details) {
    if (this.ready) {
      ipcRenderer.send(event, ...details);
    } else {
      this.q.push(this.fire.bind(this, event, ...details));