@theia/core 1.55.1 → 1.57.0-next.112

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 (150) hide show
  1. package/README.md +43 -39
  2. package/i18n/nls.cs.json +23 -18
  3. package/i18n/nls.de.json +23 -18
  4. package/i18n/nls.es.json +23 -18
  5. package/i18n/nls.fr.json +23 -18
  6. package/i18n/nls.hu.json +23 -18
  7. package/i18n/nls.it.json +23 -18
  8. package/i18n/nls.ja.json +23 -18
  9. package/i18n/nls.json +24 -19
  10. package/i18n/nls.ko.json +23 -18
  11. package/i18n/nls.pl.json +23 -18
  12. package/i18n/nls.pt-br.json +23 -18
  13. package/i18n/nls.ru.json +23 -18
  14. package/i18n/nls.tr.json +23 -18
  15. package/i18n/nls.zh-cn.json +23 -18
  16. package/i18n/nls.zh-tw.json +23 -18
  17. package/lib/browser/catalog.json +332 -44
  18. package/lib/browser/common-frontend-contribution.d.ts +1 -1
  19. package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
  20. package/lib/browser/common-frontend-contribution.js +24 -9
  21. package/lib/browser/common-frontend-contribution.js.map +1 -1
  22. package/lib/browser/dialogs.d.ts +3 -1
  23. package/lib/browser/dialogs.d.ts.map +1 -1
  24. package/lib/browser/dialogs.js +26 -2
  25. package/lib/browser/dialogs.js.map +1 -1
  26. package/lib/browser/frontend-application-module.d.ts.map +1 -1
  27. package/lib/browser/frontend-application-module.js +1 -0
  28. package/lib/browser/frontend-application-module.js.map +1 -1
  29. package/lib/browser/hover-service.d.ts.map +1 -1
  30. package/lib/browser/hover-service.js +12 -4
  31. package/lib/browser/hover-service.js.map +1 -1
  32. package/lib/browser/json-schema-store.d.ts +12 -1
  33. package/lib/browser/json-schema-store.d.ts.map +1 -1
  34. package/lib/browser/json-schema-store.js +31 -1
  35. package/lib/browser/json-schema-store.js.map +1 -1
  36. package/lib/browser/keybinding.js +3 -3
  37. package/lib/browser/keybinding.js.map +1 -1
  38. package/lib/browser/progress-status-bar-item.d.ts +1 -1
  39. package/lib/browser/progress-status-bar-item.d.ts.map +1 -1
  40. package/lib/browser/saveable.d.ts +1 -0
  41. package/lib/browser/saveable.d.ts.map +1 -1
  42. package/lib/browser/saveable.js +3 -0
  43. package/lib/browser/saveable.js.map +1 -1
  44. package/lib/browser/secondary-window-handler.d.ts.map +1 -1
  45. package/lib/browser/secondary-window-handler.js +1 -0
  46. package/lib/browser/secondary-window-handler.js.map +1 -1
  47. package/lib/browser/shell/application-shell.d.ts +2 -1
  48. package/lib/browser/shell/application-shell.d.ts.map +1 -1
  49. package/lib/browser/shell/application-shell.js +24 -10
  50. package/lib/browser/shell/application-shell.js.map +1 -1
  51. package/lib/browser/shell/view-contribution.d.ts.map +1 -1
  52. package/lib/browser/shell/view-contribution.js +1 -0
  53. package/lib/browser/shell/view-contribution.js.map +1 -1
  54. package/lib/browser/test/jsdom.d.ts.map +1 -1
  55. package/lib/browser/test/jsdom.js +6 -1
  56. package/lib/browser/test/jsdom.js.map +1 -1
  57. package/lib/browser/tree/tree-decorator.d.ts.map +1 -1
  58. package/lib/browser/tree/tree-decorator.js +1 -0
  59. package/lib/browser/tree/tree-decorator.js.map +1 -1
  60. package/lib/browser/tree/tree-view-welcome-widget.d.ts +17 -11
  61. package/lib/browser/tree/tree-view-welcome-widget.d.ts.map +1 -1
  62. package/lib/browser/tree/tree-view-welcome-widget.js +65 -34
  63. package/lib/browser/tree/tree-view-welcome-widget.js.map +1 -1
  64. package/lib/browser/tree/tree-widget.d.ts +6 -2
  65. package/lib/browser/tree/tree-widget.d.ts.map +1 -1
  66. package/lib/browser/tree/tree-widget.js +4 -4
  67. package/lib/browser/tree/tree-widget.js.map +1 -1
  68. package/lib/browser/widgets/select-component.js +1 -1
  69. package/lib/browser/widgets/select-component.js.map +1 -1
  70. package/lib/browser/widgets/widget.d.ts +1 -1
  71. package/lib/browser/widgets/widget.d.ts.map +1 -1
  72. package/lib/browser/widgets/widget.js +21 -6
  73. package/lib/browser/widgets/widget.js.map +1 -1
  74. package/lib/browser/window/browser-window-module.d.ts.map +1 -1
  75. package/lib/browser/window/browser-window-module.js +3 -0
  76. package/lib/browser/window/browser-window-module.js.map +1 -1
  77. package/lib/browser/window/default-secondary-window-service.d.ts +5 -0
  78. package/lib/browser/window/default-secondary-window-service.d.ts.map +1 -1
  79. package/lib/browser/window/default-secondary-window-service.js +6 -0
  80. package/lib/browser/window/default-secondary-window-service.js.map +1 -1
  81. package/lib/browser/window/secondary-window-service.d.ts +3 -0
  82. package/lib/browser/window/secondary-window-service.d.ts.map +1 -1
  83. package/lib/browser/window/secondary-window-service.js.map +1 -1
  84. package/lib/browser/window/window-title-service.d.ts +6 -0
  85. package/lib/browser/window/window-title-service.d.ts.map +1 -1
  86. package/lib/browser/window/window-title-service.js +12 -1
  87. package/lib/browser/window/window-title-service.js.map +1 -1
  88. package/lib/common/encoding-service.d.ts +1 -0
  89. package/lib/common/encoding-service.d.ts.map +1 -1
  90. package/lib/common/performance/stopwatch.d.ts.map +1 -1
  91. package/lib/common/performance/stopwatch.js +1 -0
  92. package/lib/common/performance/stopwatch.js.map +1 -1
  93. package/lib/common/resource.d.ts +2 -0
  94. package/lib/common/resource.d.ts.map +1 -1
  95. package/lib/common/resource.js +1 -0
  96. package/lib/common/resource.js.map +1 -1
  97. package/lib/common/theme.d.ts +1 -1
  98. package/lib/common/theme.d.ts.map +1 -1
  99. package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts.map +1 -1
  100. package/lib/electron-browser/menu/electron-context-menu-renderer.js +10 -2
  101. package/lib/electron-browser/menu/electron-context-menu-renderer.js.map +1 -1
  102. package/lib/electron-browser/messaging/electron-local-ws-connection-source.d.ts +1 -0
  103. package/lib/electron-browser/messaging/electron-local-ws-connection-source.d.ts.map +1 -1
  104. package/lib/electron-browser/messaging/electron-local-ws-connection-source.js +7 -1
  105. package/lib/electron-browser/messaging/electron-local-ws-connection-source.js.map +1 -1
  106. package/lib/electron-browser/window/electron-window-module.d.ts.map +1 -1
  107. package/lib/electron-browser/window/electron-window-module.js +3 -0
  108. package/lib/electron-browser/window/electron-window-module.js.map +1 -1
  109. package/lib/electron-main/electron-main-application.d.ts.map +1 -1
  110. package/lib/electron-main/electron-main-application.js +16 -14
  111. package/lib/electron-main/electron-main-application.js.map +1 -1
  112. package/lib/electron-main/theia-electron-window.d.ts.map +1 -1
  113. package/lib/electron-main/theia-electron-window.js +11 -3
  114. package/lib/electron-main/theia-electron-window.js.map +1 -1
  115. package/lib/node/messaging/test/test-web-socket-channel.d.ts.map +1 -1
  116. package/lib/node/messaging/test/test-web-socket-channel.js +7 -1
  117. package/lib/node/messaging/test/test-web-socket-channel.js.map +1 -1
  118. package/lib/node/messaging/websocket-endpoint.d.ts +1 -1
  119. package/lib/node/messaging/websocket-endpoint.d.ts.map +1 -1
  120. package/package.json +13 -13
  121. package/src/browser/common-frontend-contribution.ts +24 -9
  122. package/src/browser/dialogs.ts +28 -5
  123. package/src/browser/frontend-application-module.ts +2 -1
  124. package/src/browser/hover-service.ts +12 -5
  125. package/src/browser/json-schema-store.ts +35 -1
  126. package/src/browser/keybinding.ts +3 -3
  127. package/src/browser/saveable.ts +3 -0
  128. package/src/browser/secondary-window-handler.ts +1 -0
  129. package/src/browser/shell/application-shell.ts +27 -11
  130. package/src/browser/shell/view-contribution.ts +2 -2
  131. package/src/browser/style/dockpanel.css +10 -0
  132. package/src/browser/test/jsdom.ts +6 -1
  133. package/src/browser/tree/tree-decorator.ts +2 -2
  134. package/src/browser/tree/tree-view-welcome-widget.tsx +82 -46
  135. package/src/browser/tree/tree-widget.tsx +10 -4
  136. package/src/browser/widgets/select-component.tsx +1 -1
  137. package/src/browser/widgets/widget.ts +21 -6
  138. package/src/browser/window/browser-window-module.ts +3 -0
  139. package/src/browser/window/default-secondary-window-service.ts +7 -1
  140. package/src/browser/window/secondary-window-service.ts +3 -0
  141. package/src/browser/window/window-title-service.ts +14 -1
  142. package/src/common/performance/stopwatch.ts +2 -2
  143. package/src/common/resource.ts +4 -0
  144. package/src/common/theme.ts +1 -1
  145. package/src/electron-browser/menu/electron-context-menu-renderer.ts +10 -2
  146. package/src/electron-browser/messaging/electron-local-ws-connection-source.ts +5 -0
  147. package/src/electron-browser/window/electron-window-module.ts +3 -0
  148. package/src/electron-main/electron-main-application.ts +12 -11
  149. package/src/electron-main/theia-electron-window.ts +11 -3
  150. package/src/node/messaging/test/test-web-socket-channel.ts +6 -1
@@ -272,6 +272,7 @@ export class ElectronMainApplication {
272
272
  }
273
273
 
274
274
  setBackgroundColor(webContents: WebContents, backgroundColor: string): void {
275
+ BrowserWindow.fromWebContents(webContents)?.setBackgroundColor(backgroundColor);
275
276
  this.customBackgroundColor = backgroundColor;
276
277
  this.saveState(webContents);
277
278
  }
@@ -395,7 +396,7 @@ export class ElectronMainApplication {
395
396
  }
396
397
 
397
398
  protected isShowSplashScreen(): boolean {
398
- return typeof this.config.electron.splashScreenOptions === 'object' && !!this.config.electron.splashScreenOptions.content;
399
+ return !process.env.THEIA_NO_SPLASH && typeof this.config.electron.splashScreenOptions === 'object' && !!this.config.electron.splashScreenOptions.content;
399
400
  }
400
401
 
401
402
  protected getSplashScreenOptions(): ElectronFrontendApplicationConfig.SplashScreenOptions | undefined {
@@ -521,21 +522,21 @@ export class ElectronMainApplication {
521
522
  }
522
523
 
523
524
  protected async handleMainCommand(options: ElectronMainCommandOptions): Promise<void> {
524
- if (options.secondInstance === false) {
525
- await this.openWindowWithWorkspace(''); // restore previous workspace.
526
- } else if (options.file === undefined) {
527
- await this.openDefaultWindow();
528
- } else {
529
- let workspacePath: string | undefined;
525
+ let workspacePath: string | undefined;
526
+ if (options.file) {
530
527
  try {
531
528
  workspacePath = await fs.realpath(path.resolve(options.cwd, options.file));
532
529
  } catch {
533
530
  console.error(`Could not resolve the workspace path. "${options.file}" is not a valid 'file' option. Falling back to the default workspace location.`);
534
531
  }
535
- if (workspacePath === undefined) {
532
+ }
533
+ if (workspacePath !== undefined) {
534
+ await this.openWindowWithWorkspace(workspacePath);
535
+ } else {
536
+ if (options.secondInstance === false) {
537
+ await this.openWindowWithWorkspace(''); // restore previous workspace.
538
+ } else if (options.file === undefined) {
536
539
  await this.openDefaultWindow();
537
- } else {
538
- await this.openWindowWithWorkspace(workspacePath);
539
540
  }
540
541
  }
541
542
  }
@@ -628,7 +629,7 @@ export class ElectronMainApplication {
628
629
  y: bounds.y,
629
630
  frame: this.useNativeWindowFrame,
630
631
  screenLayout: this.getCurrentScreenLayout(),
631
- backgroundColor: this.customBackgroundColor
632
+ backgroundColor: this.customBackgroundColor ?? electronWindow.getBackgroundColor()
632
633
  };
633
634
  this.electronStore.set('windowstate', options);
634
635
  } catch (e) {
@@ -186,10 +186,18 @@ export class TheiaElectronWindow {
186
186
  }
187
187
 
188
188
  protected restoreMaximizedState(): void {
189
- if (this.options.isMaximized) {
190
- this._window.maximize();
189
+ const restore = () => {
190
+ if (this.options.isMaximized) {
191
+ this._window.maximize();
192
+ } else {
193
+ this._window.unmaximize();
194
+ }
195
+ };
196
+
197
+ if (this._window.isVisible()) {
198
+ restore();
191
199
  } else {
192
- this._window.unmaximize();
200
+ this._window.once('show', () => restore());
193
201
  }
194
202
  }
195
203
 
@@ -47,7 +47,12 @@ export class TestWebSocketChannelSetup {
47
47
  path: string
48
48
  }) {
49
49
  const address = (server.address() as AddressInfo);
50
- const url = `ws://${address.address}:${address.port}${servicesPath}`;
50
+ let url;
51
+ if (address.family === 'IPv6') {
52
+ url = `ws://[${address.address}]:${address.port}${servicesPath}`;
53
+ } else {
54
+ url = `ws://${address.address}:${address.port}${servicesPath}`;
55
+ }
51
56
  this.connectionProvider = this.createConnectionProvider(url);
52
57
  }
53
58