mirror of
https://github.com/Rafostar/clapper.git
synced 2025-08-30 16:02:00 +02:00
The "clapper_src" directory name was unusual. This was done to make it work as a widget for other apps. Now that this functionality got removed it can be named simply "src" as recommended by guidelines.
50 lines
1.0 KiB
JavaScript
50 lines
1.0 KiB
JavaScript
const { Gio, GObject } = imports.gi;
|
|
const Debug = imports.src.debug;
|
|
const Misc = imports.src.misc;
|
|
|
|
const { debug } = Debug;
|
|
|
|
var WebApp = GObject.registerClass(
|
|
class ClapperWebApp extends Gio.SubprocessLauncher
|
|
{
|
|
_init()
|
|
{
|
|
const flags = Gio.SubprocessFlags.STDOUT_SILENCE
|
|
| Gio.SubprocessFlags.STDERR_SILENCE;
|
|
|
|
super._init({ flags });
|
|
|
|
this.daemonApp = null;
|
|
}
|
|
|
|
startDaemonApp(port)
|
|
{
|
|
if(this.daemonApp)
|
|
return;
|
|
|
|
this.daemonApp = this.spawnv([Misc.appId + '.Daemon', String(port)]);
|
|
this.daemonApp.wait_async(null, this._onDaemonClosed.bind(this));
|
|
|
|
debug('daemon app started');
|
|
}
|
|
|
|
_onDaemonClosed(proc, result)
|
|
{
|
|
let hadError;
|
|
|
|
try {
|
|
hadError = proc.wait_finish(result);
|
|
}
|
|
catch(err) {
|
|
debug(err);
|
|
}
|
|
|
|
this.daemonApp = null;
|
|
|
|
if(hadError)
|
|
debug('daemon app exited with error or was forced to close');
|
|
|
|
debug('daemon app closed');
|
|
}
|
|
});
|