@theia/core 1.23.0-next.39 → 1.23.0-next.44

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.
Files changed (67) hide show
  1. package/README.md +3 -3
  2. package/lib/browser/core-preferences.d.ts.map +1 -1
  3. package/lib/browser/core-preferences.js +4 -2
  4. package/lib/browser/core-preferences.js.map +1 -1
  5. package/lib/browser/endpoint.d.ts +1 -0
  6. package/lib/browser/endpoint.d.ts.map +1 -1
  7. package/lib/browser/endpoint.js +3 -0
  8. package/lib/browser/endpoint.js.map +1 -1
  9. package/lib/browser/frontend-application-state.d.ts +3 -1
  10. package/lib/browser/frontend-application-state.d.ts.map +1 -1
  11. package/lib/browser/frontend-application-state.js +14 -11
  12. package/lib/browser/frontend-application-state.js.map +1 -1
  13. package/lib/browser/keyboard/browser-keyboard-frontend-contribution.js +1 -1
  14. package/lib/common/frontend-application-state.d.ts +17 -0
  15. package/lib/common/frontend-application-state.d.ts.map +1 -0
  16. package/lib/common/frontend-application-state.js +18 -0
  17. package/lib/common/frontend-application-state.js.map +1 -0
  18. package/lib/electron-browser/menu/electron-menu-contribution.js +1 -1
  19. package/lib/electron-browser/menu/electron-menu-contribution.js.map +1 -1
  20. package/lib/electron-browser/window/electron-frontend-application-state.d.ts +20 -0
  21. package/lib/electron-browser/window/electron-frontend-application-state.d.ts.map +1 -0
  22. package/lib/electron-browser/window/electron-frontend-application-state.js +39 -0
  23. package/lib/electron-browser/window/electron-frontend-application-state.js.map +1 -0
  24. package/lib/electron-browser/window/electron-window-module.d.ts.map +1 -1
  25. package/lib/electron-browser/window/electron-window-module.js +4 -1
  26. package/lib/electron-browser/window/electron-window-module.js.map +1 -1
  27. package/lib/electron-browser/window/electron-window-preferences.js +1 -1
  28. package/lib/electron-browser/window/electron-window-preferences.js.map +1 -1
  29. package/lib/electron-common/messaging/electron-messages.d.ts +4 -0
  30. package/lib/electron-common/messaging/electron-messages.d.ts.map +1 -1
  31. package/lib/electron-common/messaging/electron-messages.js +5 -1
  32. package/lib/electron-common/messaging/electron-messages.js.map +1 -1
  33. package/lib/electron-main/electron-main-application-module.d.ts.map +1 -1
  34. package/lib/electron-main/electron-main-application-module.js +8 -0
  35. package/lib/electron-main/electron-main-application-module.js.map +1 -1
  36. package/lib/electron-main/electron-main-application.d.ts +7 -35
  37. package/lib/electron-main/electron-main-application.d.ts.map +1 -1
  38. package/lib/electron-main/electron-main-application.js +45 -94
  39. package/lib/electron-main/electron-main-application.js.map +1 -1
  40. package/lib/electron-main/electron-main-constants.d.ts +22 -0
  41. package/lib/electron-main/electron-main-constants.d.ts.map +1 -0
  42. package/lib/electron-main/electron-main-constants.js +20 -0
  43. package/lib/electron-main/electron-main-constants.js.map +1 -0
  44. package/lib/electron-main/event-utils.d.ts +24 -0
  45. package/lib/electron-main/event-utils.d.ts.map +1 -0
  46. package/lib/electron-main/event-utils.js +34 -0
  47. package/lib/electron-main/event-utils.js.map +1 -0
  48. package/lib/electron-main/theia-electron-window.d.ts +74 -0
  49. package/lib/electron-main/theia-electron-window.d.ts.map +1 -0
  50. package/lib/electron-main/theia-electron-window.js +203 -0
  51. package/lib/electron-main/theia-electron-window.js.map +1 -0
  52. package/package.json +3 -3
  53. package/src/browser/core-preferences.ts +7 -2
  54. package/src/browser/endpoint.ts +4 -0
  55. package/src/browser/frontend-application-state.ts +17 -19
  56. package/src/browser/keyboard/browser-keyboard-frontend-contribution.ts +1 -1
  57. package/src/common/frontend-application-state.ts +23 -0
  58. package/src/electron-browser/menu/electron-menu-contribution.ts +1 -1
  59. package/src/electron-browser/window/electron-frontend-application-state.ts +28 -0
  60. package/src/electron-browser/window/electron-window-module.ts +4 -1
  61. package/src/electron-browser/window/electron-window-preferences.ts +1 -1
  62. package/src/electron-common/messaging/electron-messages.ts +4 -0
  63. package/src/electron-main/electron-main-application-module.ts +9 -0
  64. package/src/electron-main/electron-main-application.ts +44 -127
  65. package/src/electron-main/electron-main-constants.ts +22 -0
  66. package/src/electron-main/event-utils.ts +36 -0
  67. package/src/electron-main/theia-electron-window.ts +214 -0
@@ -14,7 +14,7 @@
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
16
  /// <reference types="node" />
17
- import { BrowserWindow, BrowserWindowConstructorOptions, Event as ElectronEvent } from '../../electron-shared/electron';
17
+ import { BrowserWindow, Event as ElectronEvent } from '../../electron-shared/electron';
18
18
  import { ForkOptions } from 'child_process';
19
19
  import { FrontendApplicationConfig } from '@theia/application-package/lib/application-props';
20
20
  import URI from '../common/uri';
@@ -24,20 +24,9 @@ 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';
28
- /**
29
- * Theia tracks the maximized state of Electron Browser Windows.
30
- */
31
- export interface TheiaBrowserWindowOptions extends BrowserWindowConstructorOptions {
32
- isMaximized?: boolean;
33
- isFullScreen?: boolean;
34
- /**
35
- * Represents the complete screen layout for all available displays.
36
- * This field is used to determine if the layout was updated since the electron window was last opened,
37
- * in which case we want to invalidate the stored options and use the default options instead.
38
- */
39
- screenLayout?: string;
40
- }
27
+ import { TheiaBrowserWindowOptions, TheiaElectronWindow, TheiaElectronWindowFactory } from './theia-electron-window';
28
+ import { ElectronMainApplicationGlobals } from './electron-main-constants';
29
+ export { ElectronMainApplicationGlobals };
41
30
  /**
42
31
  * Options passed to the main/default command handler.
43
32
  */
@@ -59,12 +48,6 @@ export interface ElectronMainExecutionParams {
59
48
  readonly argv: string[];
60
49
  readonly cwd: string;
61
50
  }
62
- export declare const ElectronMainApplicationGlobals: unique symbol;
63
- export interface ElectronMainApplicationGlobals {
64
- readonly THEIA_APP_PROJECT_PATH: string;
65
- readonly THEIA_BACKEND_MAIN_PATH: string;
66
- readonly THEIA_FRONTEND_HTML_PATH: string;
67
- }
68
51
  /**
69
52
  * The default entrypoint will handle a very rudimentary CLI to open workspaces by doing `app path/to/workspace`. To override this behavior, you can extend and rebind the
70
53
  * `ElectronMainApplication` class and overriding the `launch` method.
@@ -119,6 +102,7 @@ export declare class ElectronMainApplication {
119
102
  protected processArgv: ElectronMainProcessArgv;
120
103
  protected electronSecurityTokenService: ElectronSecurityTokenService;
121
104
  protected readonly electronSecurityToken: ElectronSecurityToken;
105
+ protected readonly windowFactory: TheiaElectronWindowFactory;
122
106
  protected readonly electronStore: Storage<{
123
107
  windowstate?: TheiaBrowserWindowOptions | undefined;
124
108
  }>;
@@ -127,9 +111,8 @@ export declare class ElectronMainApplication {
127
111
  protected _config: FrontendApplicationConfig | undefined;
128
112
  protected useNativeWindowFrame: boolean;
129
113
  protected didUseNativeWindowFrameOnStart: Map<number, boolean>;
114
+ protected windows: Map<number, TheiaElectronWindow>;
130
115
  protected restarting: boolean;
131
- protected closeIsConfirmed: Set<number>;
132
- protected closeRequested: number;
133
116
  get config(): FrontendApplicationConfig;
134
117
  start(config: FrontendApplicationConfig): Promise<void>;
135
118
  protected getTitleBarStyle(config: FrontendApplicationConfig): 'native' | 'custom';
@@ -152,10 +135,6 @@ export declare class ElectronMainApplication {
152
135
  protected handleMainCommand(params: ElectronMainExecutionParams, options: ElectronMainCommandOptions): Promise<void>;
153
136
  protected createWindowUri(): Promise<URI>;
154
137
  protected getDefaultTheiaWindowOptions(): TheiaBrowserWindowOptions;
155
- /**
156
- * Only show the window when the content is ready.
157
- */
158
- protected attachReadyToShow(electronWindow: BrowserWindow): void;
159
138
  /**
160
139
  * Save the window geometry state on every change.
161
140
  */
@@ -165,11 +144,6 @@ export declare class ElectronMainApplication {
165
144
  * Return a string unique to the current display layout.
166
145
  */
167
146
  protected getCurrentScreenLayout(): string;
168
- protected restoreMaximizedState(electronWindow: BrowserWindow, options: TheiaBrowserWindowOptions): void;
169
- protected attachCloseListeners(electronWindow: BrowserWindow, options: TheiaBrowserWindowOptions): void;
170
- protected doCloseWindow(electronWindow: BrowserWindow): void;
171
- protected handleStopRequest(electronWindow: BrowserWindow, onSafeCallback: () => unknown, reason: StopReason): Promise<void>;
172
- protected checkSafeToStop(electronWindow: BrowserWindow, reason: StopReason): Promise<boolean>;
173
147
  /**
174
148
  * Start the NodeJS backend server.
175
149
  *
@@ -182,9 +156,7 @@ export declare class ElectronMainApplication {
182
156
  protected onWillQuit(event: ElectronEvent): void;
183
157
  protected onSecondInstance(event: ElectronEvent, argv: string[], cwd: string): Promise<void>;
184
158
  protected onWindowAllClosed(event: ElectronEvent): void;
185
- protected restart(id: number): void;
186
- protected handleReload(event: Electron.IpcMainEvent): Promise<void>;
187
- protected reload(electronWindow: BrowserWindow): void;
159
+ protected restart(id: number): Promise<void>;
188
160
  protected startContributions(): Promise<void>;
189
161
  protected stopContributions(): void;
190
162
  }
@@ -1 +1 @@
1
- {"version":3,"file":"electron-main-application.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electron-main-application.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-main-application.ts"],"names":[],"mappings":"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"}
@@ -40,8 +40,11 @@ const Storage = require("electron-store");
40
40
  const common_1 = require("../common");
41
41
  const electron_messages_1 = require("../electron-common/messaging/electron-messages");
42
42
  const window_1 = require("../common/window");
43
+ const theia_electron_window_1 = require("./theia-electron-window");
44
+ const electron_main_constants_1 = require("./electron-main-constants");
45
+ Object.defineProperty(exports, "ElectronMainApplicationGlobals", { enumerable: true, get: function () { return electron_main_constants_1.ElectronMainApplicationGlobals; } });
46
+ const event_utils_1 = require("./event-utils");
43
47
  const createYargs = require('yargs/yargs');
44
- exports.ElectronMainApplicationGlobals = Symbol('ElectronMainApplicationGlobals');
45
48
  /**
46
49
  * The default entrypoint will handle a very rudimentary CLI to open workspaces by doing `app path/to/workspace`. To override this behavior, you can extend and rebind the
47
50
  * `ElectronMainApplication` class and overriding the `launch` method.
@@ -104,9 +107,8 @@ let ElectronMainApplication = class ElectronMainApplication {
104
107
  this.backendPort = this._backendPort.promise;
105
108
  this.useNativeWindowFrame = true;
106
109
  this.didUseNativeWindowFrameOnStart = new Map();
110
+ this.windows = new Map();
107
111
  this.restarting = false;
108
- this.closeIsConfirmed = new Set();
109
- this.closeRequested = 0;
110
112
  }
111
113
  get config() {
112
114
  if (!this._config) {
@@ -159,14 +161,13 @@ let ElectronMainApplication = class ElectronMainApplication {
159
161
  async createWindow(asyncOptions = this.getDefaultTheiaWindowOptions()) {
160
162
  let options = await asyncOptions;
161
163
  options = this.avoidOverlap(options);
162
- const electronWindow = new electron_1.BrowserWindow(options);
163
- electronWindow.setMenuBarVisibility(false);
164
- this.attachReadyToShow(electronWindow);
165
- this.attachSaveWindowState(electronWindow);
166
- this.restoreMaximizedState(electronWindow, options);
167
- this.attachCloseListeners(electronWindow, options);
168
- electronRemoteMain.enable(electronWindow.webContents);
169
- return electronWindow;
164
+ const electronWindow = this.windowFactory(options, this.config);
165
+ const { window: { id } } = electronWindow;
166
+ this.windows.set(id, electronWindow);
167
+ electronWindow.onDidClose(() => this.windows.delete(id));
168
+ this.attachSaveWindowState(electronWindow.window);
169
+ electronRemoteMain.enable(electronWindow.window.webContents);
170
+ return electronWindow.window;
170
171
  }
171
172
  async getLastWindowOptions() {
172
173
  const previousWindowState = this.electronStore.get('windowstate');
@@ -260,16 +261,11 @@ let ElectronMainApplication = class ElectronMainApplication {
260
261
  x,
261
262
  y }, this.getDefaultOptions());
262
263
  }
263
- /**
264
- * Only show the window when the content is ready.
265
- */
266
- attachReadyToShow(electronWindow) {
267
- electronWindow.on('ready-to-show', () => electronWindow.show());
268
- }
269
264
  /**
270
265
  * Save the window geometry state on every change.
271
266
  */
272
267
  attachSaveWindowState(electronWindow) {
268
+ const windowStateListeners = new common_1.DisposableCollection();
273
269
  let delayedSaveTimeout;
274
270
  const saveWindowStateDelayed = () => {
275
271
  if (delayedSaveTimeout) {
@@ -277,13 +273,17 @@ let ElectronMainApplication = class ElectronMainApplication {
277
273
  }
278
274
  delayedSaveTimeout = setTimeout(() => this.saveWindowState(electronWindow), 1000);
279
275
  };
280
- electronWindow.on('close', () => {
276
+ (0, event_utils_1.createDisposableListener)(electronWindow, 'close', () => {
281
277
  this.saveWindowState(electronWindow);
278
+ }, windowStateListeners);
279
+ (0, event_utils_1.createDisposableListener)(electronWindow, 'resize', saveWindowStateDelayed, windowStateListeners);
280
+ (0, event_utils_1.createDisposableListener)(electronWindow, 'move', saveWindowStateDelayed, windowStateListeners);
281
+ windowStateListeners.push(common_1.Disposable.create(() => { try {
282
282
  this.didUseNativeWindowFrameOnStart.delete(electronWindow.id);
283
- });
284
- electronWindow.on('resize', saveWindowStateDelayed);
285
- electronWindow.on('move', saveWindowStateDelayed);
283
+ }
284
+ catch (_a) { } }));
286
285
  this.didUseNativeWindowFrameOnStart.set(electronWindow.id, this.useNativeWindowFrame);
286
+ electronWindow.once('closed', () => windowStateListeners.dispose());
287
287
  }
288
288
  saveWindowState(electronWindow) {
289
289
  // In some circumstances the `electronWindow` can be `null`
@@ -292,7 +292,7 @@ let ElectronMainApplication = class ElectronMainApplication {
292
292
  }
293
293
  try {
294
294
  const bounds = electronWindow.getBounds();
295
- this.electronStore.set('windowstate', {
295
+ const options = {
296
296
  isFullScreen: electronWindow.isFullScreen(),
297
297
  isMaximized: electronWindow.isMaximized(),
298
298
  width: bounds.width,
@@ -301,7 +301,8 @@ let ElectronMainApplication = class ElectronMainApplication {
301
301
  y: bounds.y,
302
302
  frame: this.useNativeWindowFrame,
303
303
  screenLayout: this.getCurrentScreenLayout(),
304
- });
304
+ };
305
+ this.electronStore.set('windowstate', options);
305
306
  }
306
307
  catch (e) {
307
308
  console.error('Error while saving window state:', e);
@@ -313,53 +314,6 @@ let ElectronMainApplication = class ElectronMainApplication {
313
314
  getCurrentScreenLayout() {
314
315
  return electron_1.screen.getAllDisplays().map(display => `${display.bounds.x}:${display.bounds.y}:${display.bounds.width}:${display.bounds.height}`).sort().join('-');
315
316
  }
316
- restoreMaximizedState(electronWindow, options) {
317
- if (options.isMaximized) {
318
- electronWindow.maximize();
319
- }
320
- else {
321
- electronWindow.unmaximize();
322
- }
323
- }
324
- attachCloseListeners(electronWindow, options) {
325
- electronWindow.on('close', async (event) => {
326
- // User has already indicated that it is OK to close this window.
327
- if (this.closeIsConfirmed.has(electronWindow.id)) {
328
- this.closeIsConfirmed.delete(electronWindow.id);
329
- return;
330
- }
331
- event.preventDefault();
332
- this.handleStopRequest(electronWindow, () => this.doCloseWindow(electronWindow), electron_messages_1.StopReason.Close);
333
- });
334
- }
335
- doCloseWindow(electronWindow) {
336
- this.closeIsConfirmed.add(electronWindow.id);
337
- electronWindow.close();
338
- }
339
- async handleStopRequest(electronWindow, onSafeCallback, reason) {
340
- // Only confirm close to windows that have loaded our front end.
341
- let currentUrl = electronWindow.webContents.getURL();
342
- let frontendUri = this.globals.THEIA_FRONTEND_HTML_PATH;
343
- // Since our resolved frontend HTML path might contain backward slashes on Windows, we normalize everything first.
344
- if (common_1.isWindows) {
345
- currentUrl = currentUrl.replace(/\\/g, '/');
346
- frontendUri = frontendUri.replace(/\\/g, '/');
347
- }
348
- const safeToClose = !currentUrl.includes(frontendUri) || await this.checkSafeToStop(electronWindow, reason);
349
- if (safeToClose) {
350
- onSafeCallback();
351
- }
352
- }
353
- checkSafeToStop(electronWindow, reason) {
354
- const closeRequest = this.closeRequested++;
355
- const confirmChannel = `safeToClose-${electronWindow.id}-${closeRequest}`;
356
- const cancelChannel = `notSafeToClose-${electronWindow.id}-${closeRequest}`;
357
- return new Promise(resolve => {
358
- electronWindow.webContents.send(electron_messages_1.CLOSE_REQUESTED_SIGNAL, { confirmChannel, cancelChannel, reason });
359
- electron_1.ipcMain.once(confirmChannel, () => resolve(true));
360
- electron_1.ipcMain.once(cancelChannel, () => resolve(false));
361
- });
362
- }
363
317
  /**
364
318
  * Start the NodeJS backend server.
365
319
  *
@@ -440,7 +394,6 @@ let ElectronMainApplication = class ElectronMainApplication {
440
394
  electron_1.ipcMain.on(electron_messages_1.Restart, ({ sender }) => {
441
395
  this.restart(sender.id);
442
396
  });
443
- electron_1.ipcMain.on(electron_messages_1.RELOAD_REQUESTED_SIGNAL, event => this.handleReload(event));
444
397
  electron_1.ipcMain.on(electron_messages_1.RequestTitleBarStyle, ({ sender }) => {
445
398
  sender.send(electron_messages_1.TitleBarStyleAtStartup, this.didUseNativeWindowFrameOnStart.get(sender.id) ? 'native' : 'custom');
446
399
  });
@@ -463,31 +416,25 @@ let ElectronMainApplication = class ElectronMainApplication {
463
416
  this.requestStop();
464
417
  }
465
418
  }
466
- restart(id) {
419
+ async restart(id) {
467
420
  this.restarting = true;
468
- const browserWindow = electron_1.BrowserWindow.fromId(id);
469
- if (!browserWindow) {
470
- throw new Error(`no BrowserWindow with id: ${id}`);
471
- }
472
- browserWindow.on('closed', async () => {
473
- await this.launch({
474
- secondInstance: false,
475
- argv: this.processArgv.getProcessArgvWithoutBin(process.argv),
476
- cwd: process.cwd()
421
+ const window = electron_1.BrowserWindow.fromId(id);
422
+ const wrapper = this.windows.get(window === null || window === void 0 ? void 0 : window.id); // If it's not a number, we won't get anything.
423
+ if (wrapper) {
424
+ const listener = wrapper.onDidClose(async () => {
425
+ listener.dispose();
426
+ await this.launch({
427
+ secondInstance: false,
428
+ argv: this.processArgv.getProcessArgvWithoutBin(process.argv),
429
+ cwd: process.cwd()
430
+ });
431
+ this.restarting = false;
477
432
  });
478
- this.restarting = false;
479
- });
480
- this.handleStopRequest(browserWindow, () => this.doCloseWindow(browserWindow), electron_messages_1.StopReason.Restart);
481
- }
482
- async handleReload(event) {
483
- const browserWindow = electron_1.BrowserWindow.fromId(event.sender.id);
484
- if (!browserWindow) {
485
- throw new Error(`no BrowserWindow with id: ${event.sender.id}`);
433
+ // If close failed or was cancelled on this occasion, don't keep listening for it.
434
+ if (!await wrapper.close(electron_messages_1.StopReason.Restart)) {
435
+ listener.dispose();
436
+ }
486
437
  }
487
- this.reload(browserWindow);
488
- }
489
- reload(electronWindow) {
490
- this.handleStopRequest(electronWindow, () => electronWindow.reload(), electron_messages_1.StopReason.Reload);
491
438
  }
492
439
  async startContributions() {
493
440
  const promises = [];
@@ -512,7 +459,7 @@ __decorate([
512
459
  __metadata("design:type", Object)
513
460
  ], ElectronMainApplication.prototype, "contributions", void 0);
514
461
  __decorate([
515
- (0, inversify_1.inject)(exports.ElectronMainApplicationGlobals),
462
+ (0, inversify_1.inject)(electron_main_constants_1.ElectronMainApplicationGlobals),
516
463
  __metadata("design:type", Object)
517
464
  ], ElectronMainApplication.prototype, "globals", void 0);
518
465
  __decorate([
@@ -527,6 +474,10 @@ __decorate([
527
474
  (0, inversify_1.inject)(electron_token_1.ElectronSecurityToken),
528
475
  __metadata("design:type", Object)
529
476
  ], ElectronMainApplication.prototype, "electronSecurityToken", void 0);
477
+ __decorate([
478
+ (0, inversify_1.inject)(theia_electron_window_1.TheiaElectronWindowFactory),
479
+ __metadata("design:type", Function)
480
+ ], ElectronMainApplication.prototype, "windowFactory", void 0);
530
481
  ElectronMainApplication = __decorate([
531
482
  (0, inversify_1.injectable)()
532
483
  ], ElectronMainApplication);
@@ -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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"}
@@ -0,0 +1,22 @@
1
+ /********************************************************************************
2
+ * Copyright (C) 2022 Ericsson and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ export declare const ElectronMainApplicationGlobals: unique symbol;
17
+ export interface ElectronMainApplicationGlobals {
18
+ readonly THEIA_APP_PROJECT_PATH: string;
19
+ readonly THEIA_BACKEND_MAIN_PATH: string;
20
+ readonly THEIA_FRONTEND_HTML_PATH: string;
21
+ }
22
+ //# sourceMappingURL=electron-main-constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"electron-main-constants.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-main-constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,eAAO,MAAM,8BAA8B,eAA2C,CAAC;AACvF,MAAM,WAAW,8BAA8B;IAC3C,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAA;IACvC,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAA;IACxC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,CAAA;CAC5C"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (C) 2022 Ericsson and others.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.ElectronMainApplicationGlobals = void 0;
19
+ exports.ElectronMainApplicationGlobals = Symbol('ElectronMainApplicationGlobals');
20
+ //# sourceMappingURL=electron-main-constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"electron-main-constants.js","sourceRoot":"","sources":["../../src/electron-main/electron-main-constants.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAErE,QAAA,8BAA8B,GAAG,MAAM,CAAC,gCAAgC,CAAC,CAAC"}
@@ -0,0 +1,24 @@
1
+ /********************************************************************************
2
+ * Copyright (C) 2022 Ericsson and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ /// <reference types="node" />
17
+ /// <reference types="mocha" />
18
+ import { Disposable, DisposableCollection } from '../common';
19
+ /**
20
+ * @param collection If a collection is passed in, the new disposable is added to that collection. Otherwise, the new disposable is returned.
21
+ */
22
+ export declare function createDisposableListener<K>(emitter: NodeJS.EventEmitter, signal: string, handler: (event: K, ...args: unknown[]) => unknown, collection: DisposableCollection): void;
23
+ export declare function createDisposableListener<K>(emitter: NodeJS.EventEmitter, signal: string, handler: (event: K, ...args: unknown[]) => unknown): Disposable;
24
+ //# sourceMappingURL=event-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-utils.d.ts","sourceRoot":"","sources":["../../src/electron-main/event-utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;;;AAElF,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAE7D;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EACtC,OAAO,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,UAAU,EAAE,oBAAoB,GACnI,IAAI,CAAC;AACR,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAAG,UAAU,CAAC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (C) 2022 Ericsson and others.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.createDisposableListener = void 0;
19
+ const common_1 = require("../common");
20
+ function createDisposableListener(emitter, signal, handler, collection) {
21
+ emitter.on(signal, handler);
22
+ const disposable = common_1.Disposable.create(() => { try {
23
+ emitter.off(signal, handler);
24
+ }
25
+ catch (_a) { } });
26
+ if (collection) {
27
+ collection.push(disposable);
28
+ }
29
+ else {
30
+ return disposable;
31
+ }
32
+ }
33
+ exports.createDisposableListener = createDisposableListener;
34
+ //# sourceMappingURL=event-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-utils.js","sourceRoot":"","sources":["../../src/electron-main/event-utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAElF,sCAA6D;AAS7D,SAAgB,wBAAwB,CACpC,OAA4B,EAAE,MAAc,EAAE,OAAkD,EAAE,UAAiC;IAEnI,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5B,MAAM,UAAU,GAAG,mBAAU,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI;QAAE,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAAE;IAAC,WAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAChG,IAAI,UAAU,EAAE;QACZ,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAC/B;SAAM;QACH,OAAO,UAAU,CAAC;KACrB;AACL,CAAC;AAVD,4DAUC"}
@@ -0,0 +1,74 @@
1
+ /********************************************************************************
2
+ * Copyright (C) 2022 Ericsson and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { FrontendApplicationConfig } from '@theia/application-package';
17
+ import { FrontendApplicationState } from '../common/frontend-application-state';
18
+ import { StopReason } from '../electron-common/messaging/electron-messages';
19
+ import { BrowserWindow, BrowserWindowConstructorOptions, IpcMainEvent } from '../../electron-shared/electron';
20
+ import { ElectronMainApplicationGlobals } from './electron-main-constants';
21
+ import { DisposableCollection, Emitter, Event } from '../common';
22
+ /**
23
+ * Theia tracks the maximized state of Electron Browser Windows.
24
+ */
25
+ export interface TheiaBrowserWindowOptions extends BrowserWindowConstructorOptions {
26
+ isMaximized?: boolean;
27
+ isFullScreen?: boolean;
28
+ /**
29
+ * Represents the complete screen layout for all available displays.
30
+ * This field is used to determine if the layout was updated since the electron window was last opened,
31
+ * in which case we want to invalidate the stored options and use the default options instead.
32
+ */
33
+ screenLayout?: string;
34
+ }
35
+ export declare const TheiaBrowserWindowOptions: unique symbol;
36
+ export declare const WindowApplicationConfig: unique symbol;
37
+ export declare type WindowApplicationConfig = FrontendApplicationConfig;
38
+ export declare class TheiaElectronWindow {
39
+ protected readonly options: TheiaBrowserWindowOptions;
40
+ protected readonly config: WindowApplicationConfig;
41
+ protected readonly globals: ElectronMainApplicationGlobals;
42
+ protected onDidCloseEmitter: Emitter<void>;
43
+ get onDidClose(): Event<void>;
44
+ protected readonly toDispose: DisposableCollection;
45
+ protected _window: BrowserWindow;
46
+ get window(): BrowserWindow;
47
+ protected closeIsConfirmed: boolean;
48
+ protected applicationState: FrontendApplicationState;
49
+ protected init(): void;
50
+ /**
51
+ * Only show the window when the content is ready.
52
+ */
53
+ protected attachReadyToShow(): void;
54
+ protected attachCloseListeners(): void;
55
+ protected doCloseWindow(): void;
56
+ /**
57
+ * Catch certain keybindings to prevent reloading the window using keyboard shortcuts.
58
+ */
59
+ protected attachGlobalShortcuts(): void;
60
+ close(reason?: StopReason): Promise<boolean>;
61
+ protected reload(): void;
62
+ protected handleStopRequest(onSafeCallback: () => unknown, reason: StopReason): Promise<boolean>;
63
+ protected checkSafeToStop(reason: StopReason): Promise<boolean>;
64
+ protected restoreMaximizedState(): void;
65
+ protected trackApplicationState(): void;
66
+ protected attachReloadListener(): void;
67
+ protected isSender(e: IpcMainEvent): boolean;
68
+ dispose(): void;
69
+ }
70
+ export interface TheiaElectronWindowFactory {
71
+ (options: TheiaBrowserWindowOptions, config: FrontendApplicationConfig): TheiaElectronWindow;
72
+ }
73
+ export declare const TheiaElectronWindowFactory: unique symbol;
74
+ //# sourceMappingURL=theia-electron-window.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theia-electron-window.d.ts","sourceRoot":"","sources":["../../src/electron-main/theia-electron-window.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,EAAoF,UAAU,EAAE,MAAM,gDAAgD,CAAC;AAC9J,OAAO,EAAE,aAAa,EAAE,+BAA+B,EAA2B,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEvI,OAAO,EAAE,8BAA8B,EAAE,MAAM,2BAA2B,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAa,MAAM,WAAW,CAAC;AAG5E;;GAEG;AACH,MAAM,WAAW,yBAA0B,SAAQ,+BAA+B;IAC9E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,yBAAyB,eAAsC,CAAC;AAE7E,eAAO,MAAM,uBAAuB,eAAoC,CAAC;AACzE,oBAAY,uBAAuB,GAAG,yBAAyB,CAAC;AAEhE,qBACa,mBAAmB;IACO,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC;IACxD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,8BAA8B,CAAC;IAEnG,SAAS,CAAC,iBAAiB,gBAAuB;IAElD,IAAI,UAAU,IAAI,KAAK,CAAC,IAAI,CAAC,CAE5B;IAED,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAAoD;IAEhF,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC;IACjC,IAAI,MAAM,IAAI,aAAa,CAE1B;IAED,SAAS,CAAC,gBAAgB,UAAS;IACnC,SAAS,CAAC,gBAAgB,EAAE,wBAAwB,CAAU;IAG9D,SAAS,CAAC,IAAI,IAAI,IAAI;IAWtB;;OAEG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAInC,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAetC,SAAS,CAAC,aAAa,IAAI,IAAI;IAK/B;;OAEG;IACH,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAiBvC,KAAK,CAAC,MAAM,GAAE,UAA6B,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,SAAS,CAAC,MAAM,IAAI,IAAI;cAOR,iBAAiB,CAAC,cAAc,EAAE,MAAM,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAqBtG,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB/D,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAQvC,SAAS,CAAC,qBAAqB,IAAI,IAAI;IAQvC,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAQtC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO;IAI5C,OAAO,IAAI,IAAI;CAGlB;AAED,MAAM,WAAW,0BAA0B;IACvC,CAAC,OAAO,EAAE,yBAAyB,EAAE,MAAM,EAAE,yBAAyB,GAAG,mBAAmB,CAAC;CAChG;AAED,eAAO,MAAM,0BAA0B,eAAuC,CAAC"}