Stefan Huber

feature: fullscreen for electron apps via event propagation

export declare class Device {
reload(): void;
exit(): void;
fullscreen(fullscreen: any): void;
}
......
......@@ -15,6 +15,14 @@ var Device = (function () {
}
}
};
Device.prototype.fullscreen = function (fullscreen) {
if (window && window['require']) {
var electron = window['require']('electron');
if (electron && electron.ipcRenderer) {
electron.ipcRenderer.send('fullscreen', fullscreen);
}
}
};
return Device;
}());
exports.Device = Device;
......
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/services/device.ts"],"names":[],"mappings":";AAAA;IAAA;IAiBA,CAAC;IAfG,uBAAM,GAAN;QACI,EAAE,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,qBAAI,GAAJ;QACI,EAAE,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;YAC7C,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;gBACnC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,CAAC;QACL,CAAC;IACL,CAAC;IAEL,aAAC;AAAD,CAAC,AAjBD,IAiBC;AAjBY,wBAAM"}
\ No newline at end of file
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/services/device.ts"],"names":[],"mappings":";AAAA;IAAA;IA0BA,CAAC;IAxBG,uBAAM,GAAN;QACI,EAAE,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC7B,CAAC;IACL,CAAC;IAED,qBAAI,GAAJ;QACI,EAAE,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;YAC7C,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;gBACnC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,CAAC;QACL,CAAC;IACL,CAAC;IAED,2BAAU,GAAV,UAAW,UAAU;QACjB,EAAE,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC;YAC7C,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;gBACnC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YACxD,CAAC;QACL,CAAC;IACL,CAAC;IAEL,aAAC;AAAD,CAAC,AA1BD,IA0BC;AA1BY,wBAAM"}
\ No newline at end of file
......
......@@ -72,6 +72,9 @@ var Repository = (function () {
return new Promise(function (resolve, reject) {
_this.rest.heartbeat(deviceInfo)
.then(function (response) {
if (response && typeof response.fullscreen == 'boolean') {
_this.device.fullscreen(response.fullscreen);
}
if (response && response.restart == 1) {
_this.device.reload();
}
......@@ -105,6 +108,7 @@ var Repository = (function () {
console.log("prepare local couch url: ", localCouchUrl);
resolve(_this.prepare(localCouchUrl));
}).catch(function () {
_this._node = null;
resolve(_this.prepare(response.db_url));
});
});
......
This diff is collapsed. Click to expand it.
......@@ -15,4 +15,13 @@ export class Device {
}
}
fullscreen(fullscreen) {
if (window && window['require']) {
let electron = window['require']('electron');
if (electron && electron.ipcRenderer) {
electron.ipcRenderer.send('fullscreen', fullscreen);
}
}
}
}
\ No newline at end of file
......
......@@ -78,6 +78,10 @@ export class Repository {
return new Promise<boolean>((resolve, reject) => {
this.rest.heartbeat(deviceInfo)
.then(response => {
if (response && typeof response.fullscreen == 'boolean') {
this.device.fullscreen(response.fullscreen);
}
if (response && response.restart == 1) {
this.device.reload();
} else if (response && response.exit == 1) {
......