1
0
Fork 0
mirror of https://gitlab.com/futo-org/fcast.git synced 2025-08-03 07:47:01 +00:00

Changed connection detection on window re-create

This commit is contained in:
Michael Hollister 2025-01-08 15:30:39 -06:00
parent bff3440a8e
commit 9a7924ebce
7 changed files with 32 additions and 45 deletions

View file

@ -49,21 +49,6 @@ export class Main {
const voidCb = (message: any) => { message.respond({ returnValue: true, value: {} }); };
const objectCb = (message: any, value: any) => { message.respond({ returnValue: true, value: value }); };
let startupStorageClearClosureCb = null;
service.register("startup-storage-clear", (message: any) => {
if (message.isSubscription) {
startupStorageClearClosureCb = voidCb.bind(this, message);
Main.emitter.on('startup-storage-clear', startupStorageClearClosureCb);
}
message.respond({ returnValue: true, value: { subscribed: true }});
},
(message: any) => {
Main.logger.info('Canceled startup-storage-clear service subscriber');
Main.emitter.off('startup-storage-clear', startupStorageClearClosureCb);
message.respond({ returnValue: true, value: message.payload });
});
let toastClosureCb = null;
service.register("toast", (message: any) => {
if (message.isSubscription) {
@ -118,6 +103,21 @@ export class Main {
message.respond({ returnValue: true, value: message.payload });
});
let pingClosureCb = null;
service.register("ping", (message: any) => {
if (message.isSubscription) {
pingClosureCb = objectCb.bind(this, message);
Main.emitter.on('ping', pingClosureCb);
}
message.respond({ returnValue: true, value: { subscribed: true }});
},
(message: any) => {
Main.logger.info('Canceled ping service subscriber');
Main.emitter.off('ping', pingClosureCb);
message.respond({ returnValue: true, value: message.payload });
});
Main.discoveryService = new DiscoveryService();
Main.discoveryService.start();
@ -272,6 +272,7 @@ export class Main {
l.emitter.on('connect', (message) => Main.emitter.emit('connect', message));
l.emitter.on('disconnect', (message) => Main.emitter.emit('disconnect', message));
l.emitter.on('ping', (message) => Main.emitter.emit('ping', message));
l.start();
});
@ -303,8 +304,6 @@ export class Main {
message.respond({ returnValue: true, value: { success: true } });
});
this.emitter.emit('startup-storage-clear');
}
catch (err) {
Main.logger.error("Error initializing service:", err);