addon-sdk/source/lib/sdk/tabs/events.js

branch
TOR_BUG_3246
changeset 7
129ffea94266
equal deleted inserted replaced
-1:000000000000 0:991de1cb4c32
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
4 "use strict";
5
6 module.metadata = {
7 "stability": "unstable"
8 };
9
10 const ON_PREFIX = "on";
11 const TAB_PREFIX = "Tab";
12
13 const EVENTS = {
14 ready: "DOMContentLoaded",
15 load: "load", // Used for non-HTML content
16 pageshow: "pageshow", // Used for cached content
17 open: "TabOpen",
18 close: "TabClose",
19 activate: "TabSelect",
20 deactivate: null,
21 pinned: "TabPinned",
22 unpinned: "TabUnpinned"
23 }
24 exports.EVENTS = EVENTS;
25
26 Object.keys(EVENTS).forEach(function(name) {
27 EVENTS[name] = {
28 name: name,
29 listener: createListenerName(name),
30 dom: EVENTS[name]
31 }
32 });
33
34 function createListenerName (name) {
35 if (name === 'pageshow')
36 return 'onPageShow';
37 else
38 return ON_PREFIX + name.charAt(0).toUpperCase() + name.substr(1);
39 }

mercurial