VulpesOS/gaia/apps/calendar/js/message_handler.js
OverSu b38dea0597 Publish Vulpes Preview 15 sources for desktop, Android and Tundra
Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
2026-09-30 23:13:03 +02:00

43 lines
1.1 KiB
JavaScript
Executable file

define(function(require, exports, module) {
'use strict';
var Responder = require('common/responder');
var debug = require('common/debug')('message_handler');
var notification = require('notification');
var responder = exports.responder = new Responder();
exports.start = function() {
if (!('mozSetMessageHandler' in navigator)) {
debug('mozSetMessageHandler is missing!');
return;
}
debug('Will listen for alarm messages...');
navigator.mozSetMessageHandler('alarm', message => {
debug('Received alarm message!');
var data = message.data;
switch (data.type) {
case 'sync':
responder.emitWhenListener('sync');
break;
default:
responder.emitWhenListener('alarm', data);
break;
}
});
// Handle notifications when the calendar app process is closed.
debug('Will listen for notification messages...');
navigator.mozSetMessageHandler('notification', message => {
debug('Received notification message!');
if (!message.clicked) {
return debug('Notification was not clicked?');
}
var url = message.imageURL.split('?')[1];
notification.launch(url);
});
};
});