@theia/core 1.43.1 → 1.45.0
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/README.md +6 -6
- package/i18n/nls.cs.json +10 -3
- package/i18n/nls.de.json +10 -3
- package/i18n/nls.es.json +10 -3
- package/i18n/nls.fr.json +10 -3
- package/i18n/nls.hu.json +10 -3
- package/i18n/nls.it.json +10 -3
- package/i18n/nls.ja.json +10 -3
- package/i18n/nls.json +10 -3
- package/i18n/nls.pl.json +10 -3
- package/i18n/nls.pt-br.json +10 -3
- package/i18n/nls.pt-pt.json +10 -3
- package/i18n/nls.ru.json +10 -3
- package/i18n/nls.zh-cn.json +10 -3
- package/lib/browser/common-frontend-contribution.d.ts +10 -0
- package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
- package/lib/browser/common-frontend-contribution.js +68 -10
- package/lib/browser/common-frontend-contribution.js.map +1 -1
- package/lib/browser/connection-status-service.d.ts +2 -2
- package/lib/browser/connection-status-service.d.ts.map +1 -1
- package/lib/browser/connection-status-service.js +3 -3
- package/lib/browser/connection-status-service.js.map +1 -1
- package/lib/browser/connection-status-service.spec.js +6 -6
- package/lib/browser/connection-status-service.spec.js.map +1 -1
- package/lib/browser/core-preferences.d.ts.map +1 -1
- package/lib/browser/core-preferences.js +16 -0
- package/lib/browser/core-preferences.js.map +1 -1
- package/lib/browser/dialogs.d.ts +0 -1
- package/lib/browser/dialogs.d.ts.map +1 -1
- package/lib/browser/dialogs.js +1 -34
- package/lib/browser/dialogs.js.map +1 -1
- package/lib/browser/frontend-application-module.d.ts.map +1 -1
- package/lib/browser/frontend-application-module.js +4 -0
- package/lib/browser/frontend-application-module.js.map +1 -1
- package/lib/browser/icon-theme-contribution.d.ts +1 -0
- package/lib/browser/icon-theme-contribution.d.ts.map +1 -1
- package/lib/browser/icon-theme-contribution.js +1 -0
- package/lib/browser/icon-theme-contribution.js.map +1 -1
- package/lib/browser/icon-theme-service.d.ts +1 -0
- package/lib/browser/icon-theme-service.d.ts.map +1 -1
- package/lib/browser/icon-theme-service.js.map +1 -1
- package/lib/browser/language-icon-provider.d.ts +15 -0
- package/lib/browser/language-icon-provider.d.ts.map +1 -0
- package/lib/browser/language-icon-provider.js +74 -0
- package/lib/browser/language-icon-provider.js.map +1 -0
- package/lib/browser/language-service.d.ts +22 -0
- package/lib/browser/language-service.d.ts.map +1 -1
- package/lib/browser/language-service.js +28 -0
- package/lib/browser/language-service.js.map +1 -1
- package/lib/browser/messaging/connection-source.d.ts +9 -0
- package/lib/browser/messaging/connection-source.d.ts.map +1 -0
- package/lib/browser/messaging/connection-source.js +20 -0
- package/lib/browser/messaging/connection-source.js.map +1 -0
- package/lib/browser/messaging/frontend-id-provider.d.ts +13 -0
- package/lib/browser/messaging/frontend-id-provider.d.ts.map +1 -0
- package/lib/browser/messaging/frontend-id-provider.js +40 -0
- package/lib/browser/messaging/frontend-id-provider.js.map +1 -0
- package/lib/browser/messaging/messaging-frontend-module.d.ts.map +1 -1
- package/lib/browser/messaging/messaging-frontend-module.js +18 -1
- package/lib/browser/messaging/messaging-frontend-module.js.map +1 -1
- package/lib/browser/messaging/service-connection-provider.d.ts +48 -0
- package/lib/browser/messaging/service-connection-provider.d.ts.map +1 -0
- package/lib/browser/messaging/service-connection-provider.js +115 -0
- package/lib/browser/messaging/service-connection-provider.js.map +1 -0
- package/lib/browser/messaging/ws-connection-provider.d.ts +7 -38
- package/lib/browser/messaging/ws-connection-provider.d.ts.map +1 -1
- package/lib/browser/messaging/ws-connection-provider.js +17 -121
- package/lib/browser/messaging/ws-connection-provider.js.map +1 -1
- package/lib/browser/messaging/ws-connection-source.d.ts +41 -0
- package/lib/browser/messaging/ws-connection-source.d.ts.map +1 -0
- package/lib/browser/messaging/ws-connection-source.js +210 -0
- package/lib/browser/messaging/ws-connection-source.js.map +1 -0
- package/lib/browser/preload/i18n-preload-contribution.js +1 -1
- package/lib/browser/preload/i18n-preload-contribution.js.map +1 -1
- package/lib/browser/shell/application-shell.js +1 -1
- package/lib/browser/shell/application-shell.js.map +1 -1
- package/lib/browser/tree/tree-compression/compressed-tree-widget.d.ts +1 -0
- package/lib/browser/tree/tree-compression/compressed-tree-widget.d.ts.map +1 -1
- package/lib/browser/tree/tree-compression/compressed-tree-widget.js +5 -0
- package/lib/browser/tree/tree-compression/compressed-tree-widget.js.map +1 -1
- package/lib/browser/tree/tree-widget.d.ts +6 -0
- package/lib/browser/tree/tree-widget.d.ts.map +1 -1
- package/lib/browser/tree/tree-widget.js +21 -11
- package/lib/browser/tree/tree-widget.js.map +1 -1
- package/lib/browser/user-working-directory-provider.d.ts +8 -1
- package/lib/browser/user-working-directory-provider.d.ts.map +1 -1
- package/lib/browser/user-working-directory-provider.js +22 -1
- package/lib/browser/user-working-directory-provider.js.map +1 -1
- package/lib/browser/window/default-secondary-window-service.d.ts +3 -0
- package/lib/browser/window/default-secondary-window-service.d.ts.map +1 -1
- package/lib/browser/window/default-secondary-window-service.js +55 -1
- package/lib/browser/window/default-secondary-window-service.js.map +1 -1
- package/lib/common/contribution-filter/contribution-filter.d.ts +9 -0
- package/lib/common/contribution-filter/contribution-filter.d.ts.map +1 -1
- package/lib/common/event.js +1 -1
- package/lib/common/event.js.map +1 -1
- package/lib/common/message-rpc/channel.d.ts.map +1 -1
- package/lib/common/message-rpc/channel.js +7 -1
- package/lib/common/message-rpc/channel.js.map +1 -1
- package/lib/common/message-rpc/message-buffer.d.ts +2 -0
- package/lib/common/message-rpc/message-buffer.d.ts.map +1 -1
- package/lib/common/message-rpc/message-buffer.js +4 -0
- package/lib/common/message-rpc/message-buffer.js.map +1 -1
- package/lib/common/message-rpc/uint8-array-message-buffer.d.ts +1 -0
- package/lib/common/message-rpc/uint8-array-message-buffer.d.ts.map +1 -1
- package/lib/common/message-rpc/uint8-array-message-buffer.js +6 -0
- package/lib/common/message-rpc/uint8-array-message-buffer.js.map +1 -1
- package/lib/common/messaging/connection-management.d.ts +25 -0
- package/lib/common/messaging/connection-management.d.ts.map +1 -0
- package/lib/common/messaging/connection-management.js +38 -0
- package/lib/common/messaging/connection-management.js.map +1 -0
- package/lib/common/messaging/handler.d.ts +1 -0
- package/lib/common/messaging/handler.d.ts.map +1 -1
- package/lib/common/messaging/handler.js +2 -1
- package/lib/common/messaging/handler.js.map +1 -1
- package/lib/common/messaging/socket-write-buffer.d.ts +11 -0
- package/lib/common/messaging/socket-write-buffer.d.ts.map +1 -0
- package/lib/common/messaging/socket-write-buffer.js +50 -0
- package/lib/common/messaging/socket-write-buffer.js.map +1 -0
- package/lib/common/messaging/web-socket-channel.d.ts +7 -35
- package/lib/common/messaging/web-socket-channel.d.ts.map +1 -1
- package/lib/common/messaging/web-socket-channel.js +20 -9
- package/lib/common/messaging/web-socket-channel.js.map +1 -1
- package/lib/common/nls.js +12 -1
- package/lib/common/nls.js.map +1 -1
- package/lib/electron-browser/messaging/electron-frontend-id-provider.d.ts +5 -0
- package/lib/electron-browser/messaging/electron-frontend-id-provider.d.ts.map +1 -0
- package/lib/{electron-node/token/electron-token-messaging-contribution.js → electron-browser/messaging/electron-frontend-id-provider.js} +9 -28
- package/lib/electron-browser/messaging/electron-frontend-id-provider.js.map +1 -0
- package/lib/electron-browser/messaging/electron-ipc-connection-source.d.ts +24 -0
- package/lib/electron-browser/messaging/electron-ipc-connection-source.d.ts.map +1 -0
- package/lib/electron-browser/messaging/{electron-ipc-connection-provider.js → electron-ipc-connection-source.js} +19 -19
- package/lib/electron-browser/messaging/electron-ipc-connection-source.js.map +1 -0
- package/lib/electron-browser/messaging/electron-local-ws-connection-source.d.ts +7 -0
- package/lib/electron-browser/messaging/electron-local-ws-connection-source.d.ts.map +1 -0
- package/lib/electron-browser/messaging/{electron-local-ws-connection-provider.js → electron-local-ws-connection-source.js} +7 -7
- package/lib/electron-browser/messaging/electron-local-ws-connection-source.js.map +1 -0
- package/lib/electron-browser/messaging/electron-messaging-frontend-module.d.ts.map +1 -1
- package/lib/electron-browser/messaging/electron-messaging-frontend-module.js +45 -13
- package/lib/electron-browser/messaging/electron-messaging-frontend-module.js.map +1 -1
- package/lib/electron-browser/messaging/electron-ws-connection-source.d.ts +12 -0
- package/lib/electron-browser/messaging/electron-ws-connection-source.d.ts.map +1 -0
- package/lib/electron-browser/messaging/{electron-ws-connection-provider.js → electron-ws-connection-source.js} +14 -21
- package/lib/electron-browser/messaging/electron-ws-connection-source.js.map +1 -0
- package/lib/electron-browser/preload.d.ts.map +1 -1
- package/lib/electron-browser/preload.js +11 -0
- package/lib/electron-browser/preload.js.map +1 -1
- package/lib/electron-browser/window/electron-secondary-window-service.d.ts +1 -1
- package/lib/electron-browser/window/electron-secondary-window-service.d.ts.map +1 -1
- package/lib/electron-browser/window/electron-window-module.js +2 -2
- package/lib/electron-browser/window/electron-window-module.js.map +1 -1
- package/lib/electron-browser/window/electron-window-preferences.js +1 -1
- package/lib/electron-browser/window/electron-window-preferences.js.map +1 -1
- package/lib/electron-browser/window/electron-window-service.d.ts +4 -0
- package/lib/electron-browser/window/electron-window-service.d.ts.map +1 -1
- package/lib/electron-browser/window/electron-window-service.js +13 -0
- package/lib/electron-browser/window/electron-window-service.js.map +1 -1
- package/lib/electron-common/electron-api.d.ts +7 -0
- package/lib/electron-common/electron-api.d.ts.map +1 -1
- package/lib/electron-common/electron-api.js +3 -1
- package/lib/electron-common/electron-api.js.map +1 -1
- package/lib/electron-main/electron-api-main.d.ts +1 -0
- package/lib/electron-main/electron-api-main.d.ts.map +1 -1
- package/lib/electron-main/electron-api-main.js +15 -0
- package/lib/electron-main/electron-api-main.js.map +1 -1
- package/lib/electron-main/electron-main-application-module.js +5 -5
- package/lib/electron-main/electron-main-application-module.js.map +1 -1
- package/lib/electron-main/electron-main-application.d.ts +9 -13
- package/lib/electron-main/electron-main-application.d.ts.map +1 -1
- package/lib/electron-main/electron-main-application.js +60 -28
- package/lib/electron-main/electron-main-application.js.map +1 -1
- package/lib/electron-main/messaging/electron-connection-handler.d.ts.map +1 -0
- package/lib/electron-main/messaging/electron-connection-handler.js.map +1 -0
- package/lib/electron-main/messaging/electron-messaging-contribution.d.ts +13 -22
- package/lib/electron-main/messaging/electron-messaging-contribution.d.ts.map +1 -1
- package/lib/electron-main/messaging/electron-messaging-contribution.js +39 -39
- package/lib/electron-main/messaging/electron-messaging-contribution.js.map +1 -1
- package/lib/electron-main/messaging/electron-messaging-service.d.ts.map +1 -1
- package/lib/electron-main/messaging/electron-messaging-service.js.map +1 -1
- package/lib/electron-main/theia-electron-window.d.ts +2 -2
- package/lib/electron-main/theia-electron-window.d.ts.map +1 -1
- package/lib/electron-main/theia-electron-window.js +3 -2
- package/lib/electron-main/theia-electron-window.js.map +1 -1
- package/lib/node/backend-application.d.ts +2 -0
- package/lib/node/backend-application.d.ts.map +1 -1
- package/lib/node/backend-application.js +11 -9
- package/lib/node/backend-application.js.map +1 -1
- package/lib/node/cli.d.ts +1 -1
- package/lib/node/cli.d.ts.map +1 -1
- package/lib/node/cli.js +9 -5
- package/lib/node/cli.js.map +1 -1
- package/lib/node/cli.spec.js +3 -3
- package/lib/node/cli.spec.js.map +1 -1
- package/lib/node/env-variables/env-variables-server.d.ts +3 -0
- package/lib/node/env-variables/env-variables-server.d.ts.map +1 -1
- package/lib/node/env-variables/env-variables-server.js +25 -1
- package/lib/node/env-variables/env-variables-server.js.map +1 -1
- package/lib/node/i18n/localization-server.d.ts +1 -1
- package/lib/node/i18n/localization-server.d.ts.map +1 -1
- package/lib/node/messaging/default-messaging-service.d.ts +29 -0
- package/lib/node/messaging/default-messaging-service.d.ts.map +1 -0
- package/lib/node/messaging/default-messaging-service.js +140 -0
- package/lib/node/messaging/default-messaging-service.js.map +1 -0
- package/lib/node/messaging/frontend-connection-service.d.ts +7 -0
- package/lib/node/messaging/frontend-connection-service.d.ts.map +1 -0
- package/lib/node/messaging/frontend-connection-service.js +19 -0
- package/lib/node/messaging/frontend-connection-service.js.map +1 -0
- package/lib/node/messaging/ipc-protocol.js +1 -1
- package/lib/node/messaging/ipc-protocol.js.map +1 -1
- package/lib/node/messaging/messaging-backend-module.d.ts.map +1 -1
- package/lib/node/messaging/messaging-backend-module.js +23 -9
- package/lib/node/messaging/messaging-backend-module.js.map +1 -1
- package/lib/node/messaging/messaging-service.d.ts +2 -3
- package/lib/node/messaging/messaging-service.d.ts.map +1 -1
- package/lib/node/messaging/test/test-web-socket-channel.d.ts +3 -3
- package/lib/node/messaging/test/test-web-socket-channel.d.ts.map +1 -1
- package/lib/node/messaging/test/test-web-socket-channel.js +38 -24
- package/lib/node/messaging/test/test-web-socket-channel.js.map +1 -1
- package/lib/node/messaging/websocket-endpoint.d.ts +21 -0
- package/lib/node/messaging/websocket-endpoint.d.ts.map +1 -0
- package/lib/node/messaging/websocket-endpoint.js +89 -0
- package/lib/node/messaging/websocket-endpoint.js.map +1 -0
- package/lib/node/messaging/websocket-frontend-connection-service.d.ts +30 -0
- package/lib/node/messaging/websocket-frontend-connection-service.d.ts.map +1 -0
- package/lib/node/messaging/websocket-frontend-connection-service.js +173 -0
- package/lib/node/messaging/websocket-frontend-connection-service.js.map +1 -0
- package/package.json +6 -6
- package/src/browser/common-frontend-contribution.ts +70 -9
- package/src/browser/connection-status-service.spec.ts +6 -6
- package/src/browser/connection-status-service.ts +2 -2
- package/src/browser/core-preferences.ts +16 -0
- package/src/browser/dialogs.ts +0 -34
- package/src/browser/frontend-application-module.ts +4 -0
- package/src/browser/icon-theme-contribution.ts +1 -0
- package/src/browser/icon-theme-service.ts +1 -0
- package/src/browser/language-icon-provider.ts +55 -0
- package/src/browser/language-service.ts +34 -0
- package/src/browser/messaging/connection-source.ts +26 -0
- package/src/browser/messaging/frontend-id-provider.ts +37 -0
- package/src/browser/messaging/messaging-frontend-module.ts +20 -2
- package/src/browser/messaging/service-connection-provider.ts +126 -0
- package/src/browser/messaging/ws-connection-provider.ts +16 -141
- package/src/browser/messaging/ws-connection-source.ts +210 -0
- package/src/browser/preload/i18n-preload-contribution.ts +1 -1
- package/src/browser/shell/application-shell.ts +1 -1
- package/src/browser/style/index.css +1 -0
- package/src/browser/style/os.css +87 -0
- package/src/browser/tree/tree-compression/compressed-tree-widget.tsx +27 -7
- package/src/browser/tree/tree-widget.tsx +21 -10
- package/src/browser/user-working-directory-provider.ts +32 -3
- package/src/browser/window/default-secondary-window-service.ts +54 -1
- package/src/common/contribution-filter/contribution-filter.ts +9 -0
- package/src/common/event.ts +1 -1
- package/src/common/i18n/nls.metadata.json +7695 -7220
- package/src/common/message-rpc/channel.ts +5 -1
- package/src/common/message-rpc/message-buffer.ts +6 -0
- package/src/common/message-rpc/uint8-array-message-buffer.ts +7 -0
- package/src/common/messaging/connection-management.ts +43 -0
- package/src/common/messaging/handler.ts +2 -0
- package/src/common/messaging/socket-write-buffer.ts +52 -0
- package/src/common/messaging/web-socket-channel.ts +28 -45
- package/src/common/nls.ts +12 -1
- package/src/electron-browser/messaging/electron-frontend-id-provider.ts +25 -0
- package/src/electron-browser/messaging/{electron-ipc-connection-provider.ts → electron-ipc-connection-source.ts} +17 -13
- package/src/electron-browser/messaging/{electron-local-ws-connection-provider.ts → electron-local-ws-connection-source.ts} +2 -2
- package/src/electron-browser/messaging/electron-messaging-frontend-module.ts +49 -12
- package/src/electron-browser/messaging/{electron-ws-connection-provider.ts → electron-ws-connection-source.ts} +6 -17
- package/src/electron-browser/preload.ts +16 -1
- package/src/electron-browser/window/electron-secondary-window-service.ts +1 -1
- package/src/electron-browser/window/electron-window-module.ts +1 -1
- package/src/electron-browser/window/electron-window-preferences.ts +1 -1
- package/src/electron-browser/window/electron-window-service.ts +11 -0
- package/src/electron-common/electron-api.ts +8 -0
- package/src/electron-main/electron-api-main.ts +20 -1
- package/src/electron-main/electron-main-application-module.ts +5 -5
- package/src/electron-main/electron-main-application.ts +72 -44
- package/src/electron-main/messaging/electron-messaging-contribution.ts +45 -43
- package/src/electron-main/messaging/electron-messaging-service.ts +1 -0
- package/src/electron-main/theia-electron-window.ts +4 -3
- package/src/node/backend-application.ts +14 -11
- package/src/node/cli.spec.ts +3 -3
- package/src/node/cli.ts +9 -5
- package/src/node/env-variables/env-variables-server.ts +21 -1
- package/src/node/i18n/localization-server.ts +1 -1
- package/src/node/messaging/default-messaging-service.ts +129 -0
- package/src/node/messaging/frontend-connection-service.ts +24 -0
- package/src/node/messaging/ipc-protocol.ts +1 -1
- package/src/node/messaging/messaging-backend-module.ts +25 -10
- package/src/node/messaging/messaging-service.ts +3 -3
- package/src/node/messaging/test/test-web-socket-channel.ts +32 -27
- package/src/node/messaging/websocket-endpoint.ts +79 -0
- package/src/node/messaging/websocket-frontend-connection-service.ts +171 -0
- package/lib/common/messaging/abstract-connection-provider.d.ts +0 -45
- package/lib/common/messaging/abstract-connection-provider.d.ts.map +0 -1
- package/lib/common/messaging/abstract-connection-provider.js +0 -93
- package/lib/common/messaging/abstract-connection-provider.js.map +0 -1
- package/lib/electron-browser/messaging/electron-ipc-connection-provider.d.ts +0 -19
- package/lib/electron-browser/messaging/electron-ipc-connection-provider.d.ts.map +0 -1
- package/lib/electron-browser/messaging/electron-ipc-connection-provider.js.map +0 -1
- package/lib/electron-browser/messaging/electron-local-ws-connection-provider.d.ts +0 -7
- package/lib/electron-browser/messaging/electron-local-ws-connection-provider.d.ts.map +0 -1
- package/lib/electron-browser/messaging/electron-local-ws-connection-provider.js.map +0 -1
- package/lib/electron-browser/messaging/electron-ws-connection-provider.d.ts +0 -17
- package/lib/electron-browser/messaging/electron-ws-connection-provider.d.ts.map +0 -1
- package/lib/electron-browser/messaging/electron-ws-connection-provider.js.map +0 -1
- package/lib/electron-common/messaging/electron-connection-handler.d.ts.map +0 -1
- package/lib/electron-common/messaging/electron-connection-handler.js.map +0 -1
- package/lib/electron-node/token/electron-token-messaging-contribution.d.ts +0 -16
- package/lib/electron-node/token/electron-token-messaging-contribution.d.ts.map +0 -1
- package/lib/electron-node/token/electron-token-messaging-contribution.js.map +0 -1
- package/lib/node/messaging/messaging-contribution.d.ts +0 -44
- package/lib/node/messaging/messaging-contribution.d.ts.map +0 -1
- package/lib/node/messaging/messaging-contribution.js +0 -210
- package/lib/node/messaging/messaging-contribution.js.map +0 -1
- package/src/common/messaging/abstract-connection-provider.ts +0 -115
- package/src/electron-node/token/electron-token-messaging-contribution.ts +0 -41
- package/src/node/messaging/messaging-contribution.ts +0 -197
- /package/lib/{electron-common → electron-main}/messaging/electron-connection-handler.d.ts +0 -0
- /package/lib/{electron-common → electron-main}/messaging/electron-connection-handler.js +0 -0
- /package/src/{electron-common → electron-main}/messaging/electron-connection-handler.ts +0 -0
|
@@ -2101,7 +2101,7 @@ export namespace ApplicationShell {
|
|
|
2101
2101
|
|
|
2102
2102
|
export const areaLabels: Record<Area, string> = {
|
|
2103
2103
|
main: nls.localizeByDefault('Main'),
|
|
2104
|
-
top: nls.
|
|
2104
|
+
top: nls.localizeByDefault('Top'),
|
|
2105
2105
|
left: nls.localizeByDefault('Left'),
|
|
2106
2106
|
right: nls.localizeByDefault('Right'),
|
|
2107
2107
|
bottom: nls.localizeByDefault('Bottom'),
|
|
@@ -322,6 +322,7 @@ button.secondary[disabled],
|
|
|
322
322
|
| Import children style files
|
|
323
323
|
|----------------------------------------------------------------------------*/
|
|
324
324
|
|
|
325
|
+
@import "./os.css";
|
|
325
326
|
@import "./dockpanel.css";
|
|
326
327
|
@import "./dialog.css";
|
|
327
328
|
@import "./menus.css";
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (C) 2019 TypeFox 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-only WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
|
|
17
|
+
.mac {
|
|
18
|
+
--theia-ui-font-family: -apple-system,BlinkMacSystemFont,sans-serif
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.mac:lang(zh-Hans) {
|
|
22
|
+
--theia-ui-font-family: -apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,sans-serif
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.mac:lang(zh-Hant) {
|
|
26
|
+
--theia-ui-font-family: -apple-system,BlinkMacSystemFont,PingFang TC,sans-serif
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.mac:lang(ja) {
|
|
30
|
+
--theia-ui-font-family: -apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic Pro,sans-serif
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.mac:lang(ko) {
|
|
34
|
+
--theia-ui-font-family: -apple-system,BlinkMacSystemFont,Nanum Gothic,Apple SD Gothic Neo,AppleGothic,sans-serif
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.windows {
|
|
38
|
+
--theia-ui-font-family: Segoe WPC,Segoe UI,sans-serif
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.windows:lang(zh-Hans) {
|
|
42
|
+
--theia-ui-font-family: Segoe WPC,Segoe UI,Microsoft YaHei,sans-serif
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.windows:lang(zh-Hant) {
|
|
46
|
+
--theia-ui-font-family: Segoe WPC,Segoe UI,Microsoft Jhenghei,sans-serif
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.windows:lang(ja) {
|
|
50
|
+
--theia-ui-font-family: Segoe WPC,Segoe UI,Yu Gothic UI,Meiryo UI,sans-serif
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.windows:lang(ko) {
|
|
54
|
+
--theia-ui-font-family: Segoe WPC,Segoe UI,Malgun Gothic,Dotom,sans-serif
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.linux {
|
|
58
|
+
--theia-ui-font-family: system-ui,Ubuntu,Droid Sans,sans-serif
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.linux:lang(zh-Hans) {
|
|
62
|
+
--theia-ui-font-family: system-ui,Ubuntu,Droid Sans,Source Han Sans SC,Source Han Sans CN,Source Han Sans,sans-serif
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.linux:lang(zh-Hant) {
|
|
66
|
+
--theia-ui-font-family: system-ui,Ubuntu,Droid Sans,Source Han Sans TC,Source Han Sans TW,Source Han Sans,sans-serif
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.linux:lang(ja) {
|
|
70
|
+
--theia-ui-font-family: system-ui,Ubuntu,Droid Sans,Source Han Sans J,Source Han Sans JP,Source Han Sans,sans-serif
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.linux:lang(ko) {
|
|
74
|
+
--theia-ui-font-family: system-ui,Ubuntu,Droid Sans,Source Han Sans K,Source Han Sans JR,Source Han Sans,UnDotum,FBaekmuk Gulim,sans-serif
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.mac {
|
|
78
|
+
--monaco-monospace-font: "SF Mono",Monaco,Menlo,Courier,monospace
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
.windows {
|
|
82
|
+
--monaco-monospace-font: Consolas,"Courier New",monospace
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.linux {
|
|
86
|
+
--monaco-monospace-font: "Ubuntu Mono","Liberation Mono","DejaVu Sans Mono","Courier New",monospace
|
|
87
|
+
}
|
|
@@ -58,6 +58,12 @@ export class CompressedTreeWidget extends TreeViewWelcomeWidget {
|
|
|
58
58
|
}
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
+
protected override shouldRenderIndent(node: TreeNode): boolean {
|
|
62
|
+
return !this.compressionToggle.compress
|
|
63
|
+
|| !this.compressionService.isCompressionParticipant(node)
|
|
64
|
+
|| this.compressionService.getCompressionHead(node) === node;
|
|
65
|
+
}
|
|
66
|
+
|
|
61
67
|
protected override shouldDisplayNode(node: TreeNode): boolean {
|
|
62
68
|
if (this.compressionToggle.compress && this.compressionService.isCompressionParticipant(node) && !this.compressionService.isCompressionHead(node)) {
|
|
63
69
|
return false;
|
|
@@ -66,14 +72,18 @@ export class CompressedTreeWidget extends TreeViewWelcomeWidget {
|
|
|
66
72
|
}
|
|
67
73
|
|
|
68
74
|
protected override getDepthForNode(node: TreeNode, depths: Map<CompositeTreeNode | undefined, number>): number {
|
|
69
|
-
if (!this.compressionToggle.compress) {
|
|
75
|
+
if (!this.compressionToggle.compress) {
|
|
76
|
+
return super.getDepthForNode(node, depths);
|
|
77
|
+
}
|
|
70
78
|
const parent = this.compressionService.getCompressionHead(node.parent) ?? node.parent;
|
|
71
79
|
const parentDepth = depths.get(parent);
|
|
72
80
|
return parentDepth === undefined ? 0 : TreeNode.isVisible(node.parent) ? parentDepth + 1 : parentDepth;
|
|
73
81
|
}
|
|
74
82
|
|
|
75
83
|
protected override toNodeRow(node: TreeNode, index: number, depth: number): CompressedNodeRow {
|
|
76
|
-
if (!this.compressionToggle.compress) {
|
|
84
|
+
if (!this.compressionToggle.compress) {
|
|
85
|
+
return super.toNodeRow(node, index, depth);
|
|
86
|
+
}
|
|
77
87
|
const row: CompressedNodeRow = { node, index, depth };
|
|
78
88
|
if (this.compressionService.isCompressionHead(node)) {
|
|
79
89
|
row.compressionChain = this.compressionService.getCompressionChain(node);
|
|
@@ -102,7 +112,9 @@ export class CompressedTreeWidget extends TreeViewWelcomeWidget {
|
|
|
102
112
|
}
|
|
103
113
|
|
|
104
114
|
protected override getCaptionChildren(node: TreeNode, props: CompressedNodeProps): React.ReactNode {
|
|
105
|
-
if (!this.compressionToggle.compress || !props.compressionChain) {
|
|
115
|
+
if (!this.compressionToggle.compress || !props.compressionChain) {
|
|
116
|
+
return super.getCaptionChildren(node, props);
|
|
117
|
+
}
|
|
106
118
|
return props.compressionChain.map((subNode, index, self) => {
|
|
107
119
|
const classes = ['theia-tree-compressed-label-part'];
|
|
108
120
|
if (SelectableTreeNode.isSelected(subNode)) {
|
|
@@ -129,21 +141,27 @@ export class CompressedTreeWidget extends TreeViewWelcomeWidget {
|
|
|
129
141
|
}
|
|
130
142
|
|
|
131
143
|
protected override handleUp(event: KeyboardEvent): void {
|
|
132
|
-
if (!this.compressionToggle.compress) {
|
|
144
|
+
if (!this.compressionToggle.compress) {
|
|
145
|
+
return super.handleUp(event);
|
|
146
|
+
}
|
|
133
147
|
const type = this.props.multiSelect && this.hasShiftMask(event) ? TreeSelection.SelectionType.RANGE : undefined;
|
|
134
148
|
this.model.selectPrevRow(type);
|
|
135
149
|
this.node.focus();
|
|
136
150
|
}
|
|
137
151
|
|
|
138
152
|
protected override handleDown(event: KeyboardEvent): void {
|
|
139
|
-
if (!this.compressionToggle.compress) {
|
|
153
|
+
if (!this.compressionToggle.compress) {
|
|
154
|
+
return super.handleDown(event);
|
|
155
|
+
}
|
|
140
156
|
const type = this.props.multiSelect && this.hasShiftMask(event) ? TreeSelection.SelectionType.RANGE : undefined;
|
|
141
157
|
this.model.selectNextRow(type);
|
|
142
158
|
this.node.focus();
|
|
143
159
|
}
|
|
144
160
|
|
|
145
161
|
protected override async handleLeft(event: KeyboardEvent): Promise<void> {
|
|
146
|
-
if (!this.compressionToggle.compress) {
|
|
162
|
+
if (!this.compressionToggle.compress) {
|
|
163
|
+
return super.handleLeft(event);
|
|
164
|
+
}
|
|
147
165
|
if (Boolean(this.props.multiSelect) && (this.hasCtrlCmdMask(event) || this.hasShiftMask(event))) {
|
|
148
166
|
return;
|
|
149
167
|
}
|
|
@@ -160,7 +178,9 @@ export class CompressedTreeWidget extends TreeViewWelcomeWidget {
|
|
|
160
178
|
}
|
|
161
179
|
|
|
162
180
|
protected override async handleRight(event: KeyboardEvent): Promise<void> {
|
|
163
|
-
if (!this.compressionToggle.compress) {
|
|
181
|
+
if (!this.compressionToggle.compress) {
|
|
182
|
+
return super.handleRight(event);
|
|
183
|
+
}
|
|
164
184
|
if (Boolean(this.props.multiSelect) && (this.hasCtrlCmdMask(event) || this.hasShiftMask(event))) {
|
|
165
185
|
return;
|
|
166
186
|
}
|
|
@@ -894,22 +894,33 @@ export class TreeWidget extends ReactWidget implements StatefulWidget {
|
|
|
894
894
|
let current: TreeNode | undefined = node;
|
|
895
895
|
let depth = props.depth;
|
|
896
896
|
while (current && depth) {
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
897
|
+
if (this.shouldRenderIndent(current)) {
|
|
898
|
+
const classNames: string[] = [TREE_NODE_INDENT_GUIDE_CLASS];
|
|
899
|
+
if (this.needsActiveIndentGuideline(current)) {
|
|
900
|
+
classNames.push('active');
|
|
901
|
+
} else {
|
|
902
|
+
classNames.push(renderIndentGuides === 'onHover' ? 'hover' : 'always');
|
|
903
|
+
}
|
|
904
|
+
const paddingLeft = this.getDepthPadding(depth);
|
|
905
|
+
indentDivs.unshift(<div key={depth} className={classNames.join(' ')} style={{
|
|
906
|
+
paddingLeft: `${paddingLeft}px`
|
|
907
|
+
}} />);
|
|
908
|
+
depth--;
|
|
902
909
|
}
|
|
903
|
-
const paddingLeft = this.getDepthPadding(depth);
|
|
904
|
-
indentDivs.unshift(<div key={depth} className={classNames.join(' ')} style={{
|
|
905
|
-
paddingLeft: `${paddingLeft}px`
|
|
906
|
-
}} />);
|
|
907
910
|
current = current.parent;
|
|
908
|
-
depth--;
|
|
909
911
|
}
|
|
910
912
|
return indentDivs;
|
|
911
913
|
}
|
|
912
914
|
|
|
915
|
+
/**
|
|
916
|
+
* Determines whether an indentation div should be rendered for the specified tree node.
|
|
917
|
+
* If there are multiple tree nodes inside of a single rendered row,
|
|
918
|
+
* this method should only return true for the first node.
|
|
919
|
+
*/
|
|
920
|
+
protected shouldRenderIndent(node: TreeNode): boolean {
|
|
921
|
+
return true;
|
|
922
|
+
}
|
|
923
|
+
|
|
913
924
|
protected needsActiveIndentGuideline(node: TreeNode): boolean {
|
|
914
925
|
const parent = node.parent;
|
|
915
926
|
if (!parent || !this.isExpandable(parent)) {
|
|
@@ -16,14 +16,34 @@
|
|
|
16
16
|
|
|
17
17
|
import { inject, injectable } from 'inversify';
|
|
18
18
|
import URI from '../common/uri';
|
|
19
|
-
import { MaybePromise, SelectionService, UriSelection } from '../common';
|
|
19
|
+
import { MaybePromise, SelectionService, UNTITLED_SCHEME, UriSelection } from '../common';
|
|
20
20
|
import { EnvVariablesServer } from '../common/env-variables';
|
|
21
|
+
import { FrontendApplication } from './frontend-application';
|
|
22
|
+
import { FrontendApplicationContribution } from './frontend-application-contribution';
|
|
23
|
+
import { Widget } from './widgets';
|
|
24
|
+
import { Navigatable } from './navigatable-types';
|
|
21
25
|
|
|
22
26
|
@injectable()
|
|
23
|
-
export class UserWorkingDirectoryProvider {
|
|
27
|
+
export class UserWorkingDirectoryProvider implements FrontendApplicationContribution {
|
|
24
28
|
@inject(SelectionService) protected readonly selectionService: SelectionService;
|
|
25
29
|
@inject(EnvVariablesServer) protected readonly envVariables: EnvVariablesServer;
|
|
26
30
|
|
|
31
|
+
protected lastOpenResource: URI | undefined;
|
|
32
|
+
|
|
33
|
+
configure(app: FrontendApplication): void {
|
|
34
|
+
app.shell.onDidChangeCurrentWidget(e => this.setLastOpenResource(e.newValue ?? undefined));
|
|
35
|
+
this.setLastOpenResource(app.shell.currentWidget);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
protected setLastOpenResource(widget?: Widget): void {
|
|
39
|
+
if (Navigatable.is(widget)) {
|
|
40
|
+
const uri = widget.getResourceUri();
|
|
41
|
+
if (uri && uri.scheme !== UNTITLED_SCHEME) {
|
|
42
|
+
this.lastOpenResource = uri;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
27
47
|
/**
|
|
28
48
|
* @returns A {@link URI} that represents a good guess about the directory in which the user is currently operating.
|
|
29
49
|
*
|
|
@@ -35,7 +55,16 @@ export class UserWorkingDirectoryProvider {
|
|
|
35
55
|
}
|
|
36
56
|
|
|
37
57
|
protected getFromSelection(): MaybePromise<URI | undefined> {
|
|
38
|
-
|
|
58
|
+
const uri = UriSelection.getUri(this.selectionService.selection);
|
|
59
|
+
if (uri?.scheme === UNTITLED_SCHEME) {
|
|
60
|
+
// An untitled file is not a valid working directory context.
|
|
61
|
+
return undefined;
|
|
62
|
+
}
|
|
63
|
+
return this.ensureIsDirectory(uri);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
protected getFromLastOpenResource(): MaybePromise<URI | undefined> {
|
|
67
|
+
return this.ensureIsDirectory(this.lastOpenResource);
|
|
39
68
|
}
|
|
40
69
|
|
|
41
70
|
protected getFromUserHome(): MaybePromise<URI> {
|
|
@@ -19,6 +19,8 @@ import { WindowService } from './window-service';
|
|
|
19
19
|
import { ExtractableWidget } from '../widgets';
|
|
20
20
|
import { ApplicationShell } from '../shell';
|
|
21
21
|
import { Saveable } from '../saveable';
|
|
22
|
+
import { PreferenceService } from '../preferences';
|
|
23
|
+
import { environment } from '../../common';
|
|
22
24
|
|
|
23
25
|
@injectable()
|
|
24
26
|
export class DefaultSecondaryWindowService implements SecondaryWindowService {
|
|
@@ -38,6 +40,9 @@ export class DefaultSecondaryWindowService implements SecondaryWindowService {
|
|
|
38
40
|
@inject(WindowService)
|
|
39
41
|
protected readonly windowService: WindowService;
|
|
40
42
|
|
|
43
|
+
@inject(PreferenceService)
|
|
44
|
+
protected readonly preferenceService: PreferenceService;
|
|
45
|
+
|
|
41
46
|
@postConstruct()
|
|
42
47
|
init(): void {
|
|
43
48
|
// Set up messaging with secondary windows
|
|
@@ -100,7 +105,13 @@ export class DefaultSecondaryWindowService implements SecondaryWindowService {
|
|
|
100
105
|
}
|
|
101
106
|
|
|
102
107
|
protected doCreateSecondaryWindow(widget: ExtractableWidget, shell: ApplicationShell): Window | undefined {
|
|
103
|
-
|
|
108
|
+
let options;
|
|
109
|
+
const [height, width, left, top] = this.findSecondaryWindowCoordinates(widget);
|
|
110
|
+
options = `popup=1,width=${width},height=${height},left=${left},top=${top}`;
|
|
111
|
+
if (this.preferenceService.get('window.secondaryWindowAlwaysOnTop')) {
|
|
112
|
+
options += ',alwaysOnTop=true';
|
|
113
|
+
}
|
|
114
|
+
const newWindow = window.open(DefaultSecondaryWindowService.SECONDARY_WINDOW_URL, this.nextWindowId(), options) ?? undefined;
|
|
104
115
|
if (newWindow) {
|
|
105
116
|
newWindow.addEventListener('DOMContentLoaded', () => {
|
|
106
117
|
newWindow.addEventListener('beforeunload', evt => {
|
|
@@ -124,6 +135,48 @@ export class DefaultSecondaryWindowService implements SecondaryWindowService {
|
|
|
124
135
|
return newWindow;
|
|
125
136
|
}
|
|
126
137
|
|
|
138
|
+
protected findSecondaryWindowCoordinates(widget: ExtractableWidget): (number | undefined)[] {
|
|
139
|
+
const clientBounds = widget.node.getBoundingClientRect();
|
|
140
|
+
const preference = this.preferenceService.get('window.secondaryWindowPlacement');
|
|
141
|
+
|
|
142
|
+
let height; let width; let left; let top;
|
|
143
|
+
const offsetY = 20; // Offset to avoid the window title bar
|
|
144
|
+
|
|
145
|
+
switch (preference) {
|
|
146
|
+
case 'originalSize': {
|
|
147
|
+
height = widget.node.clientHeight;
|
|
148
|
+
width = widget.node.clientWidth;
|
|
149
|
+
left = window.screenLeft + clientBounds.x;
|
|
150
|
+
top = window.screenTop + (window.outerHeight - window.innerHeight) + offsetY;
|
|
151
|
+
if (environment.electron.is()) {
|
|
152
|
+
top = window.screenTop + clientBounds.y;
|
|
153
|
+
}
|
|
154
|
+
break;
|
|
155
|
+
}
|
|
156
|
+
case 'halfWidth': {
|
|
157
|
+
height = window.innerHeight - (window.outerHeight - window.innerHeight);
|
|
158
|
+
width = window.innerWidth / 2;
|
|
159
|
+
left = window.screenLeft;
|
|
160
|
+
top = window.screenTop;
|
|
161
|
+
if (!environment.electron.is()) {
|
|
162
|
+
height = window.innerHeight + clientBounds.y - offsetY;
|
|
163
|
+
}
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
case 'fullSize': {
|
|
167
|
+
height = window.innerHeight - (window.outerHeight - window.innerHeight);
|
|
168
|
+
width = window.innerWidth;
|
|
169
|
+
left = window.screenLeft;
|
|
170
|
+
top = window.screenTop;
|
|
171
|
+
if (!environment.electron.is()) {
|
|
172
|
+
height = window.innerHeight + clientBounds.y - offsetY;
|
|
173
|
+
}
|
|
174
|
+
break;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
return [height, width, left, top];
|
|
178
|
+
}
|
|
179
|
+
|
|
127
180
|
focus(win: Window): void {
|
|
128
181
|
win.focus();
|
|
129
182
|
}
|
|
@@ -50,6 +50,15 @@ export const FilterContribution = Symbol('FilterContribution');
|
|
|
50
50
|
export interface FilterContribution {
|
|
51
51
|
/**
|
|
52
52
|
* Use the registry to register your contribution filters.
|
|
53
|
+
* * Note that filtering contributions based on their class (constructor) name is discouraged.
|
|
54
|
+
* Class names are minified in production builds and therefore not reliable.
|
|
55
|
+
* Use instance of checks or direct constructor comparison instead:
|
|
56
|
+
*
|
|
57
|
+
* ```ts
|
|
58
|
+
* registry.addFilters('*', [
|
|
59
|
+
* contrib => !(contrib instanceof SampleFilteredCommandContribution)
|
|
60
|
+
* ]);
|
|
61
|
+
* ```
|
|
53
62
|
*/
|
|
54
63
|
registerContributionFilters(registry: ContributionFilterRegistry): void;
|
|
55
64
|
}
|
package/src/common/event.ts
CHANGED