Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/apps/system/js/activities.js
diff options
context:
space:
mode:
Diffstat (limited to 'apps/system/js/activities.js')
-rw-r--r--apps/system/js/activities.js86
1 files changed, 0 insertions, 86 deletions
diff --git a/apps/system/js/activities.js b/apps/system/js/activities.js
deleted file mode 100644
index f4db861..0000000
--- a/apps/system/js/activities.js
+++ /dev/null
@@ -1,86 +0,0 @@
-/* -*- Mode: js; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- /
-/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */
-
-'use strict';
-
-var Activities = {
- init: function act_init() {
- window.addEventListener('mozChromeEvent', this);
- },
-
- handleEvent: function act_handleEvent(evt) {
- switch (evt.type) {
- case 'mozChromeEvent':
- var detail = evt.detail;
- switch (detail.type) {
- case 'activity-choice':
- this.chooseActivity(detail);
- break;
- }
- break;
- }
- },
-
- chooseActivity: function chooseActivity(detail) {
- this._id = detail.id;
-
- var choices = detail.choices;
- if (choices.length === 1) {
- this.choose('0');
- } else {
- // Since the mozChromeEvent could be triggered by a 'click', and gecko
- // event are synchronous make sure to exit the event loop before
- // showing the list.
- setTimeout((function nextTick() {
- var activityName = navigator.mozL10n.get('activity-' + detail.name);
- ListMenu.request(this._listItems(choices), activityName,
- this.choose.bind(this), this.cancel.bind(this));
- }).bind(this));
- }
- },
-
- choose: function act_choose(choice) {
- var returnedChoice = {
- id: this._id,
- type: 'activity-choice',
- value: choice
- };
-
- this._sendEvent(returnedChoice);
- delete this._id;
- },
-
- cancel: function act_cancel(value) {
- var returnedChoice = {
- id: this._id,
- type: 'activity-choice',
- value: -1
- };
-
- this._sendEvent(returnedChoice);
- delete this._id;
- },
-
- _sendEvent: function act_sendEvent(value) {
- var event = document.createEvent('CustomEvent');
- event.initCustomEvent('mozContentEvent', true, true, value);
- window.dispatchEvent(event);
- },
-
- _listItems: function act_listItems(choices) {
- var items = [];
-
- choices.forEach(function(choice, index) {
- var app = Applications.getByManifestURL(choice.manifest);
- items.push({
- label: new ManifestHelper(app.manifest).name,
- icon: choice.icon,
- value: index
- });
- });
-
- return items;
- }
-};
-
-Activities.init();