@theia/core 1.21.0-next.17 → 1.21.0-next.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/common-frontend-contribution.d.ts +5 -2
- package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
- package/lib/browser/common-frontend-contribution.js +21 -4
- package/lib/browser/common-frontend-contribution.js.map +1 -1
- package/lib/browser/dialogs.d.ts +1 -0
- package/lib/browser/dialogs.d.ts.map +1 -1
- package/lib/browser/dialogs.js +11 -1
- package/lib/browser/dialogs.js.map +1 -1
- package/lib/browser/frontend-application.d.ts +15 -2
- package/lib/browser/frontend-application.d.ts.map +1 -1
- package/lib/browser/frontend-application.js +8 -1
- package/lib/browser/frontend-application.js.map +1 -1
- package/lib/browser/shell/application-shell-mouse-tracker.js +2 -2
- package/lib/browser/shell/application-shell-mouse-tracker.js.map +1 -1
- package/lib/browser/shell/application-shell.d.ts +0 -13
- package/lib/browser/shell/application-shell.d.ts.map +1 -1
- package/lib/browser/shell/application-shell.js +1 -16
- package/lib/browser/shell/application-shell.js.map +1 -1
- package/lib/browser/shell/shell-layout-restorer.d.ts +2 -0
- package/lib/browser/shell/shell-layout-restorer.d.ts.map +1 -1
- package/lib/browser/shell/shell-layout-restorer.js +13 -6
- package/lib/browser/shell/shell-layout-restorer.js.map +1 -1
- package/lib/browser/window/default-window-service.d.ts +19 -2
- package/lib/browser/window/default-window-service.d.ts.map +1 -1
- package/lib/browser/window/default-window-service.js +67 -12
- package/lib/browser/window/default-window-service.js.map +1 -1
- package/lib/browser/window/default-window-service.spec.js +3 -3
- package/lib/browser/window/default-window-service.spec.js.map +1 -1
- package/lib/browser/window/test/mock-window-service.d.ts +3 -1
- package/lib/browser/window/test/mock-window-service.d.ts.map +1 -1
- package/lib/browser/window/test/mock-window-service.js +3 -1
- package/lib/browser/window/test/mock-window-service.js.map +1 -1
- package/lib/browser/window/window-service.d.ts +20 -6
- package/lib/browser/window/window-service.d.ts.map +1 -1
- package/lib/electron-browser/menu/electron-menu-contribution.d.ts +2 -0
- package/lib/electron-browser/menu/electron-menu-contribution.d.ts.map +1 -1
- package/lib/electron-browser/menu/electron-menu-contribution.js +6 -0
- package/lib/electron-browser/menu/electron-menu-contribution.js.map +1 -1
- package/lib/electron-browser/window/electron-window-service.d.ts +7 -5
- package/lib/electron-browser/window/electron-window-service.d.ts.map +1 -1
- package/lib/electron-browser/window/electron-window-service.js +20 -42
- package/lib/electron-browser/window/electron-window-service.js.map +1 -1
- package/lib/electron-common/messaging/electron-messages.d.ts +27 -0
- package/lib/electron-common/messaging/electron-messages.d.ts.map +1 -1
- package/lib/electron-common/messaging/electron-messages.js +24 -1
- package/lib/electron-common/messaging/electron-messages.js.map +1 -1
- package/lib/electron-main/electron-main-application.d.ts +9 -0
- package/lib/electron-main/electron-main-application.d.ts.map +1 -1
- package/lib/electron-main/electron-main-application.js +57 -14
- package/lib/electron-main/electron-main-application.js.map +1 -1
- package/package.json +3 -3
- package/src/browser/common-frontend-contribution.ts +23 -6
- package/src/browser/dialogs.ts +9 -0
- package/src/browser/frontend-application.ts +19 -2
- package/src/browser/shell/application-shell-mouse-tracker.ts +2 -2
- package/src/browser/shell/application-shell.ts +1 -18
- package/src/browser/shell/shell-layout-restorer.ts +12 -6
- package/src/browser/window/default-window-service.spec.ts +3 -3
- package/src/browser/window/default-window-service.ts +69 -13
- package/src/browser/window/test/mock-window-service.ts +3 -1
- package/src/browser/window/window-service.ts +22 -8
- package/src/electron-browser/menu/electron-menu-contribution.ts +6 -1
- package/src/electron-browser/window/electron-window-service.ts +21 -41
- package/src/electron-common/messaging/electron-messages.ts +29 -0
- package/src/electron-main/electron-main-application.ts +74 -15
|
@@ -15,9 +15,32 @@
|
|
|
15
15
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
16
|
********************************************************************************/
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.Restart = exports.TitleBarStyleAtStartup = exports.TitleBarStyleChanged = exports.RequestTitleBarStyle = void 0;
|
|
18
|
+
exports.StopReason = exports.RELOAD_REQUESTED_SIGNAL = exports.CLOSE_REQUESTED_SIGNAL = exports.Restart = exports.TitleBarStyleAtStartup = exports.TitleBarStyleChanged = exports.RequestTitleBarStyle = void 0;
|
|
19
19
|
exports.RequestTitleBarStyle = 'requestTitleBarStyle';
|
|
20
20
|
exports.TitleBarStyleChanged = 'titleBarStyleChanged';
|
|
21
21
|
exports.TitleBarStyleAtStartup = 'titleBarStyleAtStartup';
|
|
22
22
|
exports.Restart = 'restart';
|
|
23
|
+
/**
|
|
24
|
+
* Emitted by main when close requested.
|
|
25
|
+
*/
|
|
26
|
+
exports.CLOSE_REQUESTED_SIGNAL = 'close-requested';
|
|
27
|
+
/**
|
|
28
|
+
* Emitted by window when a reload is requested.
|
|
29
|
+
*/
|
|
30
|
+
exports.RELOAD_REQUESTED_SIGNAL = 'reload-requested';
|
|
31
|
+
var StopReason;
|
|
32
|
+
(function (StopReason) {
|
|
33
|
+
/**
|
|
34
|
+
* Closing the window with no prospect of restart.
|
|
35
|
+
*/
|
|
36
|
+
StopReason[StopReason["Close"] = 0] = "Close";
|
|
37
|
+
/**
|
|
38
|
+
* Reload without closing the window.
|
|
39
|
+
*/
|
|
40
|
+
StopReason[StopReason["Reload"] = 1] = "Reload";
|
|
41
|
+
/**
|
|
42
|
+
* Reload that includes closing the window.
|
|
43
|
+
*/
|
|
44
|
+
StopReason[StopReason["Restart"] = 2] = "Restart";
|
|
45
|
+
})(StopReason = exports.StopReason || (exports.StopReason = {}));
|
|
23
46
|
//# sourceMappingURL=electron-messages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"electron-messages.js","sourceRoot":"","sources":["../../../src/electron-common/messaging/electron-messages.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAErE,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,sBAAsB,GAAG,wBAAwB,CAAC;AAClD,QAAA,OAAO,GAAG,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"electron-messages.js","sourceRoot":"","sources":["../../../src/electron-common/messaging/electron-messages.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAErE,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,sBAAsB,GAAG,wBAAwB,CAAC;AAClD,QAAA,OAAO,GAAG,SAAS,CAAC;AACjC;;GAEG;AACU,QAAA,sBAAsB,GAAG,iBAAiB,CAAC;AACxD;;GAEG;AACU,QAAA,uBAAuB,GAAG,kBAAkB,CAAC;AAE1D,IAAY,UAaX;AAbD,WAAY,UAAU;IAClB;;OAEG;IACH,6CAAK,CAAA;IACL;;OAEG;IACH,+CAAM,CAAA;IACN;;OAEG;IACH,iDAAO,CAAA;AACX,CAAC,EAbW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAarB"}
|
|
@@ -24,6 +24,7 @@ import { ContributionProvider } from '../common/contribution-provider';
|
|
|
24
24
|
import { ElectronSecurityTokenService } from './electron-security-token-service';
|
|
25
25
|
import { ElectronSecurityToken } from '../electron-common/electron-token';
|
|
26
26
|
import Storage = require('electron-store');
|
|
27
|
+
import { StopReason } from '../electron-common/messaging/electron-messages';
|
|
27
28
|
/**
|
|
28
29
|
* Theia tracks the maximized state of Electron Browser Windows.
|
|
29
30
|
*/
|
|
@@ -125,6 +126,8 @@ export declare class ElectronMainApplication {
|
|
|
125
126
|
protected useNativeWindowFrame: boolean;
|
|
126
127
|
protected didUseNativeWindowFrameOnStart: Map<number, boolean>;
|
|
127
128
|
protected restarting: boolean;
|
|
129
|
+
protected closeIsConfirmed: Set<number>;
|
|
130
|
+
protected closeRequested: number;
|
|
128
131
|
get config(): FrontendApplicationConfig;
|
|
129
132
|
start(config: FrontendApplicationConfig): Promise<void>;
|
|
130
133
|
protected getTitleBarStyle(config: FrontendApplicationConfig): 'native' | 'custom';
|
|
@@ -165,6 +168,10 @@ export declare class ElectronMainApplication {
|
|
|
165
168
|
*/
|
|
166
169
|
protected attachGlobalShortcuts(electronWindow: BrowserWindow): void;
|
|
167
170
|
protected restoreMaximizedState(electronWindow: BrowserWindow, options: TheiaBrowserWindowOptions): void;
|
|
171
|
+
protected attachCloseListeners(electronWindow: BrowserWindow, options: TheiaBrowserWindowOptions): void;
|
|
172
|
+
protected doCloseWindow(electronWindow: BrowserWindow): void;
|
|
173
|
+
protected handleStopRequest(electronWindow: BrowserWindow, onSafeCallback: () => unknown, reason: StopReason): Promise<void>;
|
|
174
|
+
protected checkSafeToStop(electronWindow: BrowserWindow, reason: StopReason): Promise<boolean>;
|
|
168
175
|
/**
|
|
169
176
|
* Start the NodeJS backend server.
|
|
170
177
|
*
|
|
@@ -178,6 +185,8 @@ export declare class ElectronMainApplication {
|
|
|
178
185
|
protected onSecondInstance(event: ElectronEvent, argv: string[], cwd: string): Promise<void>;
|
|
179
186
|
protected onWindowAllClosed(event: ElectronEvent): void;
|
|
180
187
|
protected restart(id: number): void;
|
|
188
|
+
protected handleReload(event: Electron.IpcMainEvent): Promise<void>;
|
|
189
|
+
protected reload(electronWindow: BrowserWindow): void;
|
|
181
190
|
protected startContributions(): Promise<void>;
|
|
182
191
|
protected stopContributions(): void;
|
|
183
192
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"electron-main-application.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;;AAGlF,OAAO,EAAwC,aAAa,EAAE,+BAA+B,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAKrJ,OAAO,EAAQ,WAAW,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,kDAAkD,CAAC;AAC7F,OAAO,GAAG,MAAM,eAAe,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,OAAO,GAAG,QAAQ,gBAAgB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"electron-main-application.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"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"}
|
|
@@ -104,6 +104,8 @@ let ElectronMainApplication = class ElectronMainApplication {
|
|
|
104
104
|
this.useNativeWindowFrame = true;
|
|
105
105
|
this.didUseNativeWindowFrameOnStart = new Map();
|
|
106
106
|
this.restarting = false;
|
|
107
|
+
this.closeIsConfirmed = new Set();
|
|
108
|
+
this.closeRequested = 0;
|
|
107
109
|
}
|
|
108
110
|
get config() {
|
|
109
111
|
if (!this._config) {
|
|
@@ -162,6 +164,7 @@ let ElectronMainApplication = class ElectronMainApplication {
|
|
|
162
164
|
this.attachSaveWindowState(electronWindow);
|
|
163
165
|
this.attachGlobalShortcuts(electronWindow);
|
|
164
166
|
this.restoreMaximizedState(electronWindow, options);
|
|
167
|
+
this.attachCloseListeners(electronWindow, options);
|
|
165
168
|
return electronWindow;
|
|
166
169
|
}
|
|
167
170
|
async getLastWindowOptions() {
|
|
@@ -312,19 +315,19 @@ let ElectronMainApplication = class ElectronMainApplication {
|
|
|
312
315
|
*/
|
|
313
316
|
attachGlobalShortcuts(electronWindow) {
|
|
314
317
|
var _a;
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
}
|
|
327
|
-
}
|
|
318
|
+
const handler = ((_a = this.config.electron) === null || _a === void 0 ? void 0 : _a.disallowReloadKeybinding) ? () => { }
|
|
319
|
+
: () => this.reload(electronWindow);
|
|
320
|
+
const accelerators = ['CmdOrCtrl+R', 'F5'];
|
|
321
|
+
electronWindow.on('focus', () => {
|
|
322
|
+
for (const accelerator of accelerators) {
|
|
323
|
+
electron_1.globalShortcut.register(accelerator, handler);
|
|
324
|
+
}
|
|
325
|
+
});
|
|
326
|
+
electronWindow.on('blur', () => {
|
|
327
|
+
for (const accelerator of accelerators) {
|
|
328
|
+
electron_1.globalShortcut.unregister(accelerator);
|
|
329
|
+
}
|
|
330
|
+
});
|
|
328
331
|
}
|
|
329
332
|
restoreMaximizedState(electronWindow, options) {
|
|
330
333
|
if (options.isMaximized) {
|
|
@@ -334,6 +337,38 @@ let ElectronMainApplication = class ElectronMainApplication {
|
|
|
334
337
|
electronWindow.unmaximize();
|
|
335
338
|
}
|
|
336
339
|
}
|
|
340
|
+
attachCloseListeners(electronWindow, options) {
|
|
341
|
+
electronWindow.on('close', async (event) => {
|
|
342
|
+
// User has already indicated that it is OK to close this window.
|
|
343
|
+
if (this.closeIsConfirmed.has(electronWindow.id)) {
|
|
344
|
+
this.closeIsConfirmed.delete(electronWindow.id);
|
|
345
|
+
return;
|
|
346
|
+
}
|
|
347
|
+
event.preventDefault();
|
|
348
|
+
this.handleStopRequest(electronWindow, () => this.doCloseWindow(electronWindow), electron_messages_1.StopReason.Close);
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
doCloseWindow(electronWindow) {
|
|
352
|
+
this.closeIsConfirmed.add(electronWindow.id);
|
|
353
|
+
electronWindow.close();
|
|
354
|
+
}
|
|
355
|
+
async handleStopRequest(electronWindow, onSafeCallback, reason) {
|
|
356
|
+
// Only confirm close to windows that have loaded our front end.
|
|
357
|
+
const safeToClose = !electronWindow.webContents.getURL().includes(this.globals.THEIA_FRONTEND_HTML_PATH) || await this.checkSafeToStop(electronWindow, reason);
|
|
358
|
+
if (safeToClose) {
|
|
359
|
+
onSafeCallback();
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
checkSafeToStop(electronWindow, reason) {
|
|
363
|
+
const closeRequest = this.closeRequested++;
|
|
364
|
+
const confirmChannel = `safeToClose-${electronWindow.id}-${closeRequest}`;
|
|
365
|
+
const cancelChannel = `notSafeToClose-${electronWindow.id}-${closeRequest}`;
|
|
366
|
+
return new Promise(resolve => {
|
|
367
|
+
electronWindow.webContents.send(electron_messages_1.CLOSE_REQUESTED_SIGNAL, { confirmChannel, cancelChannel, reason });
|
|
368
|
+
electron_1.ipcMain.once(confirmChannel, () => resolve(true));
|
|
369
|
+
electron_1.ipcMain.once(cancelChannel, () => resolve(false));
|
|
370
|
+
});
|
|
371
|
+
}
|
|
337
372
|
/**
|
|
338
373
|
* Start the NodeJS backend server.
|
|
339
374
|
*
|
|
@@ -408,6 +443,7 @@ let ElectronMainApplication = class ElectronMainApplication {
|
|
|
408
443
|
electron_1.ipcMain.on(electron_messages_1.Restart, ({ sender }) => {
|
|
409
444
|
this.restart(sender.id);
|
|
410
445
|
});
|
|
446
|
+
electron_1.ipcMain.on(electron_messages_1.RELOAD_REQUESTED_SIGNAL, event => this.handleReload(event));
|
|
411
447
|
electron_1.ipcMain.on(electron_messages_1.RequestTitleBarStyle, ({ sender }) => {
|
|
412
448
|
sender.send(electron_messages_1.TitleBarStyleAtStartup, this.didUseNativeWindowFrameOnStart.get(sender.id) ? 'native' : 'custom');
|
|
413
449
|
});
|
|
@@ -441,7 +477,14 @@ let ElectronMainApplication = class ElectronMainApplication {
|
|
|
441
477
|
});
|
|
442
478
|
this.restarting = false;
|
|
443
479
|
});
|
|
444
|
-
window.
|
|
480
|
+
this.handleStopRequest(window, () => this.doCloseWindow(window), electron_messages_1.StopReason.Restart);
|
|
481
|
+
}
|
|
482
|
+
async handleReload(event) {
|
|
483
|
+
const window = electron_1.BrowserWindow.fromId(event.sender.id);
|
|
484
|
+
this.reload(window);
|
|
485
|
+
}
|
|
486
|
+
reload(electronWindow) {
|
|
487
|
+
this.handleStopRequest(electronWindow, () => electronWindow.reload(), electron_messages_1.StopReason.Reload);
|
|
445
488
|
}
|
|
446
489
|
async startContributions() {
|
|
447
490
|
const promises = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"electron-main-application.js","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"electron-main-application.js","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/core",
|
|
3
|
-
"version": "1.21.0-next.
|
|
3
|
+
"version": "1.21.0-next.21+08b61a7003f",
|
|
4
4
|
"description": "Theia is a cloud & desktop IDE framework implemented in TypeScript.",
|
|
5
5
|
"main": "lib/common/index.js",
|
|
6
6
|
"typings": "lib/common/index.d.ts",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"@phosphor/virtualdom": "1",
|
|
18
18
|
"@phosphor/widgets": "1",
|
|
19
19
|
"@primer/octicons-react": "^9.0.0",
|
|
20
|
-
"@theia/application-package": "1.21.0-next.
|
|
20
|
+
"@theia/application-package": "1.21.0-next.21+08b61a7003f",
|
|
21
21
|
"@types/body-parser": "^1.16.4",
|
|
22
22
|
"@types/cookie": "^0.3.3",
|
|
23
23
|
"@types/dompurify": "^2.2.2",
|
|
@@ -177,5 +177,5 @@
|
|
|
177
177
|
"nyc": {
|
|
178
178
|
"extends": "../../configs/nyc.json"
|
|
179
179
|
},
|
|
180
|
-
"gitHead": "
|
|
180
|
+
"gitHead": "08b61a7003f25824c084ea162e5942e8af19507a"
|
|
181
181
|
}
|
|
@@ -20,7 +20,7 @@ import debounce = require('lodash.debounce');
|
|
|
20
20
|
import { injectable, inject, optional } from 'inversify';
|
|
21
21
|
import { MAIN_MENU_BAR, SETTINGS_MENU, MenuContribution, MenuModelRegistry, ACCOUNTS_MENU } from '../common/menu';
|
|
22
22
|
import { KeybindingContribution, KeybindingRegistry } from './keybinding';
|
|
23
|
-
import { FrontendApplication, FrontendApplicationContribution } from './frontend-application';
|
|
23
|
+
import { FrontendApplication, FrontendApplicationContribution, OnWillStopAction } from './frontend-application';
|
|
24
24
|
import { CommandContribution, CommandRegistry, Command } from '../common/command';
|
|
25
25
|
import { UriAwareCommandHandler } from '../common/uri-command-handler';
|
|
26
26
|
import { SelectionService } from '../common/selection-service';
|
|
@@ -55,6 +55,9 @@ import { QuickInputService, QuickPick, QuickPickItem } from './quick-input';
|
|
|
55
55
|
import { AsyncLocalizationProvider } from '../common/i18n/localization';
|
|
56
56
|
import { nls } from '../common/nls';
|
|
57
57
|
import { CurrentWidgetCommandAdapter } from './shell/current-widget-command-adapter';
|
|
58
|
+
import { ConfirmDialog, confirmExit, Dialog } from './dialogs';
|
|
59
|
+
import { WindowService } from './window/window-service';
|
|
60
|
+
import { FrontendApplicationConfigProvider } from './frontend-application-config-provider';
|
|
58
61
|
|
|
59
62
|
export namespace CommonMenus {
|
|
60
63
|
|
|
@@ -353,6 +356,9 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
|
|
|
353
356
|
@inject(AuthenticationService)
|
|
354
357
|
protected readonly authenticationService: AuthenticationService;
|
|
355
358
|
|
|
359
|
+
@inject(WindowService)
|
|
360
|
+
protected readonly windowService: WindowService;
|
|
361
|
+
|
|
356
362
|
async configure(app: FrontendApplication): Promise<void> {
|
|
357
363
|
const configDirUri = await this.environments.getConfigDirUri();
|
|
358
364
|
// Global settings
|
|
@@ -967,10 +973,10 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
|
|
|
967
973
|
});
|
|
968
974
|
}
|
|
969
975
|
|
|
970
|
-
onWillStop():
|
|
976
|
+
onWillStop(): OnWillStopAction | undefined {
|
|
971
977
|
try {
|
|
972
978
|
if (this.shouldPreventClose || this.shell.canSaveAll()) {
|
|
973
|
-
return
|
|
979
|
+
return { reason: 'Dirty editors present', action: () => confirmExit() };
|
|
974
980
|
}
|
|
975
981
|
} finally {
|
|
976
982
|
this.shouldPreventClose = false;
|
|
@@ -983,10 +989,11 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
|
|
|
983
989
|
for (const additionalLanguage of ['en', ...availableLanguages]) {
|
|
984
990
|
items.push({
|
|
985
991
|
label: additionalLanguage,
|
|
986
|
-
execute: () => {
|
|
987
|
-
if (additionalLanguage !== nls.locale) {
|
|
992
|
+
execute: async () => {
|
|
993
|
+
if (additionalLanguage !== nls.locale && await this.confirmRestart()) {
|
|
994
|
+
this.windowService.setSafeToShutDown();
|
|
988
995
|
window.localStorage.setItem(nls.localeId, additionalLanguage);
|
|
989
|
-
|
|
996
|
+
this.windowService.reload();
|
|
990
997
|
}
|
|
991
998
|
}
|
|
992
999
|
});
|
|
@@ -998,6 +1005,16 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
|
|
|
998
1005
|
});
|
|
999
1006
|
}
|
|
1000
1007
|
|
|
1008
|
+
protected async confirmRestart(): Promise<boolean> {
|
|
1009
|
+
const shouldRestart = await new ConfirmDialog({
|
|
1010
|
+
title: nls.localizeByDefault('A restart is required for the change in display language to take effect.'),
|
|
1011
|
+
msg: nls.localizeByDefault('Press the restart button to restart {0} and change the display language.', FrontendApplicationConfigProvider.get().applicationName),
|
|
1012
|
+
ok: nls.localizeByDefault('Restart'),
|
|
1013
|
+
cancel: Dialog.CANCEL,
|
|
1014
|
+
}).open();
|
|
1015
|
+
return shouldRestart === true;
|
|
1016
|
+
}
|
|
1017
|
+
|
|
1001
1018
|
protected selectIconTheme(): void {
|
|
1002
1019
|
let resetTo: string | undefined = this.iconThemes.current;
|
|
1003
1020
|
const previewTheme = debounce((id: string) => this.iconThemes.current = id, 200);
|
package/src/browser/dialogs.ts
CHANGED
|
@@ -385,7 +385,16 @@ export class ConfirmDialog extends AbstractDialog<boolean> {
|
|
|
385
385
|
}
|
|
386
386
|
return msg;
|
|
387
387
|
}
|
|
388
|
+
}
|
|
388
389
|
|
|
390
|
+
export async function confirmExit(): Promise<boolean> {
|
|
391
|
+
const safeToExit = await new ConfirmDialog({
|
|
392
|
+
title: nls.localize('theia/core/quitTitle', 'Are you sure you want to quit?'),
|
|
393
|
+
msg: nls.localize('theia/core/quitMessage', 'Any unsaved changes will not be saved.'),
|
|
394
|
+
ok: Dialog.YES,
|
|
395
|
+
cancel: Dialog.NO,
|
|
396
|
+
}).open();
|
|
397
|
+
return safeToExit === true;
|
|
389
398
|
}
|
|
390
399
|
|
|
391
400
|
@injectable()
|
|
@@ -52,10 +52,10 @@ export interface FrontendApplicationContribution {
|
|
|
52
52
|
|
|
53
53
|
/**
|
|
54
54
|
* Called on `beforeunload` event, right before the window closes.
|
|
55
|
-
* Return `true` in order to prevent exit.
|
|
55
|
+
* Return `true` or an OnWillStopAction in order to prevent exit.
|
|
56
56
|
* Note: No async code allowed, this function has to run on one tick.
|
|
57
57
|
*/
|
|
58
|
-
onWillStop?(app: FrontendApplication): boolean |
|
|
58
|
+
onWillStop?(app: FrontendApplication): boolean | undefined | OnWillStopAction;
|
|
59
59
|
|
|
60
60
|
/**
|
|
61
61
|
* Called when an application is stopped or unloaded.
|
|
@@ -77,6 +77,23 @@ export interface FrontendApplicationContribution {
|
|
|
77
77
|
onDidInitializeLayout?(app: FrontendApplication): MaybePromise<void>;
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
+
export interface OnWillStopAction {
|
|
81
|
+
/**
|
|
82
|
+
* @resolves to `true` if it is safe to close the application; `false` otherwise.
|
|
83
|
+
*/
|
|
84
|
+
action: () => MaybePromise<boolean>;
|
|
85
|
+
/**
|
|
86
|
+
* A descriptive string for the reason preventing close.
|
|
87
|
+
*/
|
|
88
|
+
reason: string;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export namespace OnWillStopAction {
|
|
92
|
+
export function is(candidate: unknown): candidate is OnWillStopAction {
|
|
93
|
+
return typeof candidate === 'object' && !!candidate && 'action' in candidate && 'reason' in candidate;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
80
97
|
const TIMER_WARNING_THRESHOLD = 100;
|
|
81
98
|
|
|
82
99
|
/**
|
|
@@ -46,10 +46,10 @@ export class ApplicationShellMouseTracker implements FrontendApplicationContribu
|
|
|
46
46
|
onStart(): void {
|
|
47
47
|
// Here we need to attach a `mousedown` listener to the `TabBar`s, `DockPanel`s and the `SidePanel`s. Otherwise, Phosphor handles the event and stops the propagation.
|
|
48
48
|
// Track the `mousedown` on the `TabBar` for the currently active widget.
|
|
49
|
-
this.applicationShell.
|
|
49
|
+
this.applicationShell.onDidChangeActiveWidget((args: FocusTracker.IChangedArgs<Widget>) => {
|
|
50
50
|
this.toDisposeOnActiveChange.dispose();
|
|
51
51
|
if (args.newValue) {
|
|
52
|
-
const tabBar =
|
|
52
|
+
const tabBar = this.applicationShell.getTabBarFor(args.newValue);
|
|
53
53
|
if (tabBar) {
|
|
54
54
|
this.toDisposeOnActiveChange.push(addEventListener(tabBar.node, 'mousedown', this.mousedownListener, true));
|
|
55
55
|
}
|
|
@@ -16,7 +16,6 @@
|
|
|
16
16
|
|
|
17
17
|
import { injectable, inject, optional, postConstruct } from 'inversify';
|
|
18
18
|
import { ArrayExt, find, toArray, each } from '@phosphor/algorithm';
|
|
19
|
-
import { Signal } from '@phosphor/signaling';
|
|
20
19
|
import {
|
|
21
20
|
BoxLayout, BoxPanel, DockLayout, DockPanel, FocusTracker, Layout, Panel, SplitLayout,
|
|
22
21
|
SplitPanel, TabBar, Widget, Title
|
|
@@ -299,7 +298,7 @@ export class ApplicationShell extends Widget {
|
|
|
299
298
|
panelFocus.set(area === 'main');
|
|
300
299
|
};
|
|
301
300
|
updateFocusContextKeys();
|
|
302
|
-
this.
|
|
301
|
+
this.onDidChangeActiveWidget(updateFocusContextKeys);
|
|
303
302
|
}
|
|
304
303
|
|
|
305
304
|
protected setTopPanelVisibility(preference: string): void {
|
|
@@ -929,28 +928,13 @@ export class ApplicationShell extends Widget {
|
|
|
929
928
|
return title ? title.owner : undefined;
|
|
930
929
|
}
|
|
931
930
|
|
|
932
|
-
/**
|
|
933
|
-
* A signal emitted whenever the `currentWidget` property is changed.
|
|
934
|
-
*
|
|
935
|
-
* @deprecated since 0.11.0, use `onDidChangeCurrentWidget` instead
|
|
936
|
-
*/
|
|
937
|
-
readonly currentChanged = new Signal<this, FocusTracker.IChangedArgs<Widget>>(this);
|
|
938
|
-
|
|
939
931
|
/**
|
|
940
932
|
* Handle a change to the current widget.
|
|
941
933
|
*/
|
|
942
934
|
private onCurrentChanged(sender: FocusTracker<Widget>, args: FocusTracker.IChangedArgs<Widget>): void {
|
|
943
|
-
this.currentChanged.emit(args);
|
|
944
935
|
this.onDidChangeCurrentWidgetEmitter.fire(args);
|
|
945
936
|
}
|
|
946
937
|
|
|
947
|
-
/**
|
|
948
|
-
* A signal emitted whenever the `activeWidget` property is changed.
|
|
949
|
-
*
|
|
950
|
-
* @deprecated since 0.11.0, use `onDidChangeActiveWidget` instead
|
|
951
|
-
*/
|
|
952
|
-
readonly activeChanged = new Signal<this, FocusTracker.IChangedArgs<Widget>>(this);
|
|
953
|
-
|
|
954
938
|
protected readonly toDisposeOnActiveChanged = new DisposableCollection();
|
|
955
939
|
|
|
956
940
|
/**
|
|
@@ -1014,7 +998,6 @@ export class ApplicationShell extends Widget {
|
|
|
1014
998
|
};
|
|
1015
999
|
this.toDisposeOnActiveChanged.push(Disposable.create(() => newValue['onCloseRequest'] = onCloseRequest));
|
|
1016
1000
|
}
|
|
1017
|
-
this.activeChanged.emit(args);
|
|
1018
1001
|
this.onDidChangeActiveWidgetEmitter.fire(args);
|
|
1019
1002
|
}
|
|
1020
1003
|
|
|
@@ -26,6 +26,7 @@ import { ContributionProvider } from '../../common/contribution-provider';
|
|
|
26
26
|
import { MaybePromise } from '../../common/types';
|
|
27
27
|
import { ApplicationShell, applicationShellLayoutVersion, ApplicationShellLayoutVersion } from './application-shell';
|
|
28
28
|
import { CommonCommands } from '../common-frontend-contribution';
|
|
29
|
+
import { WindowService } from '../window/window-service';
|
|
29
30
|
|
|
30
31
|
/**
|
|
31
32
|
* A contract for widgets that want to store and restore their inner state, between sessions.
|
|
@@ -125,6 +126,9 @@ export class ShellLayoutRestorer implements CommandContribution {
|
|
|
125
126
|
@inject(ContributionProvider) @named(ApplicationShellLayoutMigration)
|
|
126
127
|
protected readonly migrations: ContributionProvider<ApplicationShellLayoutMigration>;
|
|
127
128
|
|
|
129
|
+
@inject(WindowService)
|
|
130
|
+
protected readonly windowService: WindowService;
|
|
131
|
+
|
|
128
132
|
constructor(
|
|
129
133
|
@inject(WidgetManager) protected widgetManager: WidgetManager,
|
|
130
134
|
@inject(ILogger) protected logger: ILogger,
|
|
@@ -137,12 +141,14 @@ export class ShellLayoutRestorer implements CommandContribution {
|
|
|
137
141
|
}
|
|
138
142
|
|
|
139
143
|
protected async resetLayout(): Promise<void> {
|
|
140
|
-
this.
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
144
|
+
if (await this.windowService.isSafeToShutDown()) {
|
|
145
|
+
this.logger.info('>>> Resetting layout...');
|
|
146
|
+
this.shouldStoreLayout = false;
|
|
147
|
+
this.storageService.setData(this.storageKey, undefined);
|
|
148
|
+
ThemeService.get().reset(); // Theme service cannot use DI, so the current theme ID is stored elsewhere. Hence the explicit reset.
|
|
149
|
+
this.logger.info('<<< The layout has been successfully reset.');
|
|
150
|
+
this.windowService.reload();
|
|
151
|
+
}
|
|
146
152
|
}
|
|
147
153
|
|
|
148
154
|
storeLayout(app: FrontendApplication): void {
|
|
@@ -51,7 +51,7 @@ describe('DefaultWindowService', () => {
|
|
|
51
51
|
];
|
|
52
52
|
const windowService = setupWindowService('never', frontendContributions);
|
|
53
53
|
assert(frontendContributions.every(contribution => !contribution.onWillStopCalled), 'contributions should not be called yet');
|
|
54
|
-
assert(windowService
|
|
54
|
+
assert(windowService['collectContributionUnloadVetoes']().length === 0, 'there should be no vetoes');
|
|
55
55
|
assert(frontendContributions.every(contribution => contribution.onWillStopCalled), 'contributions should have been called');
|
|
56
56
|
});
|
|
57
57
|
it('onWillStop should be called on every contribution (ifRequired)', () => {
|
|
@@ -62,7 +62,7 @@ describe('DefaultWindowService', () => {
|
|
|
62
62
|
];
|
|
63
63
|
const windowService = setupWindowService('ifRequired', frontendContributions);
|
|
64
64
|
assert(frontendContributions.every(contribution => !contribution.onWillStopCalled), 'contributions should not be called yet');
|
|
65
|
-
assert(
|
|
65
|
+
assert(windowService['collectContributionUnloadVetoes']().length > 0, 'There should be vetoes');
|
|
66
66
|
assert(frontendContributions.every(contribution => contribution.onWillStopCalled), 'contributions should have been called');
|
|
67
67
|
});
|
|
68
68
|
it('onWillStop should be called on every contribution (always)', () => {
|
|
@@ -72,7 +72,7 @@ describe('DefaultWindowService', () => {
|
|
|
72
72
|
];
|
|
73
73
|
const windowService = setupWindowService('always', frontendContributions);
|
|
74
74
|
assert(frontendContributions.every(contribution => !contribution.onWillStopCalled), 'contributions should not be called yet');
|
|
75
|
-
assert(
|
|
75
|
+
assert(windowService['collectContributionUnloadVetoes']().length > 0, 'there should be vetoes');
|
|
76
76
|
assert(frontendContributions.every(contribution => contribution.onWillStopCalled), 'contributions should have been called');
|
|
77
77
|
});
|
|
78
78
|
});
|