summaryrefslogtreecommitdiffstats
path: root/tools/quitter/contentscript.js
blob: b0cfc703137defc247851c4919b08f1944cb7d91 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

"use strict";

/* eslint-env webextensions */

const Quitter = {
  async quit() {
    // This can be called before the background page has loaded,
    // so we need to wait for it.
    browser.runtime.sendMessage("quit").catch(() => {
      setTimeout(Quitter.quit, 100);
    });
  },
};

window.wrappedJSObject.Quitter = cloneInto(Quitter, window, {
  cloneFunctions: true,
});