@theia/core 1.53.0-next.55 → 1.53.0-next.64
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 +582 -582
- package/i18n/nls.de.json +582 -582
- package/i18n/nls.es.json +582 -582
- package/i18n/nls.fr.json +582 -582
- package/i18n/nls.hu.json +582 -582
- package/i18n/nls.it.json +582 -582
- package/i18n/nls.ja.json +582 -582
- package/i18n/nls.json +582 -582
- package/i18n/nls.ko.json +582 -582
- package/i18n/nls.pl.json +582 -582
- package/i18n/nls.pt-br.json +582 -582
- package/i18n/nls.ru.json +582 -582
- package/i18n/nls.tr.json +582 -582
- package/i18n/nls.zh-cn.json +582 -582
- package/i18n/nls.zh-tw.json +582 -582
- package/lib/browser/catalog.json +54 -6
- package/lib/browser/common-frontend-contribution.js +3 -3
- package/lib/browser/common-styling-participants.js +166 -166
- package/lib/browser/progress-location-service.spec.js +7 -7
- package/lib/browser/storage-service.js +3 -3
- package/lib/browser/tree/tree.spec.js +75 -75
- package/lib/node/process-utils.spec.js +8 -8
- package/package.json +4 -4
- package/shared/ajv/index.d.ts +2 -2
- package/shared/markdown-it.d.ts +2 -2
- package/shared/markdown-it.js +1 -1
- package/shared/reflect-metadata/index.d.ts +1 -1
- package/shared/reflect-metadata/index.js +1 -1
- package/shared/vscode-languageserver-types/index.d.ts +1 -1
- package/src/browser/about-dialog.tsx +137 -137
- package/src/browser/authentication-service.ts +467 -467
- package/src/browser/breadcrumbs/breadcrumb-popup-container.ts +101 -101
- package/src/browser/breadcrumbs/breadcrumb-renderer.tsx +41 -41
- package/src/browser/breadcrumbs/breadcrumbs-constants.ts +79 -79
- package/src/browser/breadcrumbs/breadcrumbs-renderer.tsx +185 -185
- package/src/browser/breadcrumbs/breadcrumbs-service.ts +108 -108
- package/src/browser/breadcrumbs/index.ts +21 -21
- package/src/browser/browser-clipboard-service.ts +122 -122
- package/src/browser/browser.ts +239 -239
- package/src/browser/clipboard-service.ts +23 -23
- package/src/browser/color-application-contribution.ts +110 -110
- package/src/browser/color-registry.ts +60 -60
- package/src/browser/command-open-handler.ts +54 -54
- package/src/browser/common-frontend-contribution.ts +2680 -2680
- package/src/browser/common-styling-participants.ts +361 -361
- package/src/browser/connection-status-service.spec.ts +200 -200
- package/src/browser/connection-status-service.ts +216 -216
- package/src/browser/context-key-service.ts +142 -142
- package/src/browser/context-menu-renderer.ts +124 -124
- package/src/browser/core-preferences.ts +343 -343
- package/src/browser/credentials-service.ts +106 -106
- package/src/browser/decoration-style.ts +65 -65
- package/src/browser/decorations-service.ts +209 -209
- package/src/browser/dialogs/react-dialog.tsx +56 -56
- package/src/browser/dialogs.ts +534 -534
- package/src/browser/diff-uris.ts +117 -117
- package/src/browser/encoding-registry.ts +97 -97
- package/src/browser/endpoint.spec.ts +148 -148
- package/src/browser/endpoint.ts +136 -136
- package/src/browser/external-uri-service.ts +79 -79
- package/src/browser/file-icons-js.d.ts +20 -20
- package/src/browser/frontend-application-bindings.ts +62 -62
- package/src/browser/frontend-application-config-provider.spec.ts +45 -45
- package/src/browser/frontend-application-config-provider.ts +50 -50
- package/src/browser/frontend-application-contribution.ts +110 -110
- package/src/browser/frontend-application-module.ts +474 -474
- package/src/browser/frontend-application-state.ts +74 -74
- package/src/browser/frontend-application.ts +326 -326
- package/src/browser/hover-service.ts +218 -218
- package/src/browser/http-open-handler.ts +49 -49
- package/src/browser/i18n/i18n-frontend-module.ts +27 -27
- package/src/browser/i18n/language-quick-pick-service.ts +130 -130
- package/src/browser/icon-registry.ts +87 -87
- package/src/browser/icon-theme-contribution.ts +64 -64
- package/src/browser/icon-theme-service.ts +217 -217
- package/src/browser/icons/CollapseAll.svg +7 -7
- package/src/browser/icons/CollapseAll_inverse.svg +7 -7
- package/src/browser/icons/Refresh.svg +7 -7
- package/src/browser/icons/Refresh_inverse.svg +7 -7
- package/src/browser/icons/add-inverse.svg +4 -4
- package/src/browser/icons/add.svg +4 -4
- package/src/browser/icons/arrow-down-bright.svg +6 -6
- package/src/browser/icons/arrow-down-dark.svg +6 -6
- package/src/browser/icons/arrow-up-bright.svg +6 -6
- package/src/browser/icons/arrow-up-dark.svg +6 -6
- package/src/browser/icons/case-sensitive-dark.svg +16 -16
- package/src/browser/icons/case-sensitive.svg +16 -16
- package/src/browser/icons/chevron-right-dark.svg +5 -5
- package/src/browser/icons/chevron-right-light.svg +6 -6
- package/src/browser/icons/circle-bright.svg +7 -7
- package/src/browser/icons/circle-dark.svg +7 -7
- package/src/browser/icons/clear-search-results-dark.svg +7 -7
- package/src/browser/icons/clear-search-results.svg +7 -7
- package/src/browser/icons/close-all-bright.svg +7 -7
- package/src/browser/icons/close-all-dark.svg +7 -7
- package/src/browser/icons/close-bright.svg +7 -7
- package/src/browser/icons/close-dark.svg +7 -7
- package/src/browser/icons/collapse.svg +4 -4
- package/src/browser/icons/edit-json-dark.svg +6 -6
- package/src/browser/icons/edit-json.svg +6 -6
- package/src/browser/icons/expand.svg +4 -4
- package/src/browser/icons/loading-dark.svg +6 -6
- package/src/browser/icons/loading-light.svg +6 -6
- package/src/browser/icons/open-change-bright.svg +3 -3
- package/src/browser/icons/open-change-dark.svg +4 -4
- package/src/browser/icons/open-file-bright.svg +4 -4
- package/src/browser/icons/open-file-dark.svg +4 -4
- package/src/browser/icons/preview-bright.svg +3 -3
- package/src/browser/icons/preview-dark.svg +3 -3
- package/src/browser/icons/regex-dark.svg +10 -10
- package/src/browser/icons/regex.svg +10 -10
- package/src/browser/icons/remove-all-inverse.svg +4 -4
- package/src/browser/icons/remove-all.svg +4 -4
- package/src/browser/icons/replace-all-inverse.svg +13 -13
- package/src/browser/icons/replace-all.svg +13 -13
- package/src/browser/icons/replace-inverse.svg +15 -15
- package/src/browser/icons/replace.svg +15 -15
- package/src/browser/icons/whole-word-dark.svg +19 -19
- package/src/browser/icons/whole-word.svg +19 -19
- package/src/browser/index.ts +50 -50
- package/src/browser/json-schema-store.ts +118 -118
- package/src/browser/keybinding.spec.ts +554 -554
- package/src/browser/keybinding.ts +759 -759
- package/src/browser/keyboard/browser-keyboard-frontend-contribution.ts +108 -108
- package/src/browser/keyboard/browser-keyboard-layout-provider.spec.ts +171 -171
- package/src/browser/keyboard/browser-keyboard-layout-provider.ts +469 -469
- package/src/browser/keyboard/browser-keyboard-module.ts +30 -30
- package/src/browser/keyboard/index.ts +20 -20
- package/src/browser/keyboard/keyboard-layout-service.spec.ts +121 -121
- package/src/browser/keyboard/keyboard-layout-service.ts +455 -455
- package/src/browser/keyboard/keys.spec.ts +258 -258
- package/src/browser/keyboard/keys.ts +20 -20
- package/src/browser/keys.ts +21 -21
- package/src/browser/label-parser.spec.ts +165 -165
- package/src/browser/label-parser.ts +108 -108
- package/src/browser/label-provider.spec.ts +62 -62
- package/src/browser/label-provider.ts +385 -385
- package/src/browser/language-icon-provider.ts +55 -55
- package/src/browser/language-service.ts +77 -77
- package/src/browser/logger-frontend-module.ts +65 -65
- package/src/browser/markdown-rendering/markdown-renderer.ts +98 -98
- package/src/browser/menu/browser-context-menu-renderer.ts +48 -48
- package/src/browser/menu/browser-menu-module.ts +28 -28
- package/src/browser/menu/browser-menu-plugin.ts +491 -491
- package/src/browser/menu/context-menu-context.ts +41 -41
- package/src/browser/messaging/connection-source.ts +26 -26
- package/src/browser/messaging/frontend-id-provider.ts +37 -37
- package/src/browser/messaging/index.ts +18 -18
- package/src/browser/messaging/messaging-frontend-module.ts +41 -41
- package/src/browser/messaging/service-connection-provider.ts +140 -140
- package/src/browser/messaging/ws-connection-provider.ts +49 -49
- package/src/browser/messaging/ws-connection-source.ts +230 -230
- package/src/browser/mime-service.ts +30 -30
- package/src/browser/navigatable-types.ts +81 -81
- package/src/browser/navigatable.ts +39 -39
- package/src/browser/open-with-service.ts +140 -140
- package/src/browser/opener-service.spec.ts +49 -49
- package/src/browser/opener-service.ts +169 -169
- package/src/browser/performance/frontend-stopwatch.ts +65 -65
- package/src/browser/performance/index.ts +18 -18
- package/src/browser/performance/measurement-frontend-bindings.ts +31 -31
- package/src/browser/preferences/index.ts +23 -23
- package/src/browser/preferences/injectable-preference-proxy.ts +283 -283
- package/src/browser/preferences/preference-configurations.ts +82 -82
- package/src/browser/preferences/preference-contribution.ts +436 -436
- package/src/browser/preferences/preference-language-override-service.ts +111 -111
- package/src/browser/preferences/preference-provider.spec.ts +36 -36
- package/src/browser/preferences/preference-provider.ts +277 -277
- package/src/browser/preferences/preference-proxy.spec.ts +367 -367
- package/src/browser/preferences/preference-proxy.ts +367 -367
- package/src/browser/preferences/preference-schema-provider.spec.ts +130 -130
- package/src/browser/preferences/preference-scope.ts +18 -18
- package/src/browser/preferences/preference-service.spec.ts +613 -613
- package/src/browser/preferences/preference-service.ts +594 -594
- package/src/browser/preferences/preference-validation-service.spec.ts +334 -334
- package/src/browser/preferences/preference-validation-service.ts +358 -358
- package/src/browser/preferences/test/index.ts +19 -19
- package/src/browser/preferences/test/mock-preference-provider.ts +50 -50
- package/src/browser/preferences/test/mock-preference-proxy.ts +48 -48
- package/src/browser/preferences/test/mock-preference-service.ts +63 -63
- package/src/browser/preload/i18n-preload-contribution.ts +50 -50
- package/src/browser/preload/os-preload-contribution.ts +37 -37
- package/src/browser/preload/preload-module.ts +45 -45
- package/src/browser/preload/preloader.ts +37 -37
- package/src/browser/preload/theme-preload-contribution.ts +31 -31
- package/src/browser/progress-bar-factory.ts +29 -29
- package/src/browser/progress-bar.ts +76 -76
- package/src/browser/progress-client.ts +53 -53
- package/src/browser/progress-location-service.spec.ts +50 -50
- package/src/browser/progress-location-service.ts +96 -96
- package/src/browser/progress-status-bar-item.ts +83 -83
- package/src/browser/quick-input/index.ts +23 -23
- package/src/browser/quick-input/quick-access.ts +75 -75
- package/src/browser/quick-input/quick-command-frontend-contribution.ts +89 -89
- package/src/browser/quick-input/quick-command-service.ts +246 -246
- package/src/browser/quick-input/quick-help-service.ts +87 -87
- package/src/browser/quick-input/quick-input-frontend-contribution.ts +33 -33
- package/src/browser/quick-input/quick-input-service.spec.ts +176 -176
- package/src/browser/quick-input/quick-input-service.ts +17 -17
- package/src/browser/quick-input/quick-pick-service-impl.ts +69 -69
- package/src/browser/quick-input/quick-view-service.ts +83 -83
- package/src/browser/request/browser-request-module.ts +23 -23
- package/src/browser/request/browser-request-service.ts +172 -172
- package/src/browser/resource-context-key.ts +77 -77
- package/src/browser/saveable-service.ts +332 -332
- package/src/browser/saveable.ts +395 -395
- package/src/browser/secondary-window-handler.ts +211 -211
- package/src/browser/shell/additional-views-menu-widget.tsx +71 -71
- package/src/browser/shell/application-shell-mouse-tracker.ts +103 -103
- package/src/browser/shell/application-shell.ts +2271 -2271
- package/src/browser/shell/current-widget-command-adapter.ts +57 -57
- package/src/browser/shell/index.ts +23 -23
- package/src/browser/shell/shell-layout-restorer.ts +399 -399
- package/src/browser/shell/side-panel-handler.ts +794 -794
- package/src/browser/shell/side-panel-toolbar.ts +111 -111
- package/src/browser/shell/sidebar-bottom-menu-widget.tsx +39 -39
- package/src/browser/shell/sidebar-menu-widget.tsx +183 -183
- package/src/browser/shell/sidebar-top-menu-widget.tsx +26 -26
- package/src/browser/shell/split-panels.ts +191 -191
- package/src/browser/shell/tab-bar-decorator.ts +106 -106
- package/src/browser/shell/tab-bar-toolbar/index.ts +19 -19
- package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.ts +31 -31
- package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-registry.ts +242 -242
- package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-types.ts +149 -149
- package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.spec.ts +62 -62
- package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.tsx +443 -443
- package/src/browser/shell/tab-bars.spec.ts +63 -63
- package/src/browser/shell/tab-bars.ts +1468 -1468
- package/src/browser/shell/theia-dock-panel.ts +265 -265
- package/src/browser/shell/view-column-service.ts +125 -125
- package/src/browser/shell/view-contribution.ts +178 -178
- package/src/browser/source-tree/index.ts +19 -19
- package/src/browser/source-tree/source-tree-widget.tsx +107 -107
- package/src/browser/source-tree/source-tree.ts +146 -146
- package/src/browser/source-tree/tree-source.ts +73 -73
- package/src/browser/status-bar/index.ts +29 -29
- package/src/browser/status-bar/status-bar-types.ts +97 -97
- package/src/browser/status-bar/status-bar-view-model.ts +209 -209
- package/src/browser/status-bar/status-bar.tsx +189 -189
- package/src/browser/storage-service.spec.ts +76 -76
- package/src/browser/storage-service.ts +129 -129
- package/src/browser/style/about.css +36 -36
- package/src/browser/style/alert-messages.css +62 -62
- package/src/browser/style/ansi.css +88 -88
- package/src/browser/style/breadcrumbs.css +130 -130
- package/src/browser/style/dialog.css +126 -126
- package/src/browser/style/dockpanel.css +76 -76
- package/src/browser/style/hover-service.css +101 -101
- package/src/browser/style/icons.css +61 -61
- package/src/browser/style/index.css +353 -353
- package/src/browser/style/materialcolors.css +278 -278
- package/src/browser/style/menus.css +230 -230
- package/src/browser/style/notification.css +39 -39
- package/src/browser/style/os.css +87 -87
- package/src/browser/style/progress-bar.css +43 -43
- package/src/browser/style/quick-title-bar.css +45 -45
- package/src/browser/style/scrollbars.css +172 -172
- package/src/browser/style/search-box.css +123 -123
- package/src/browser/style/select-component.css +107 -107
- package/src/browser/style/sidepanel.css +367 -367
- package/src/browser/style/split-widget.css +38 -38
- package/src/browser/style/status-bar.css +127 -127
- package/src/browser/style/tabs.css +647 -647
- package/src/browser/style/tooltip.css +28 -28
- package/src/browser/style/tree-decorators.css +81 -81
- package/src/browser/style/tree.css +232 -232
- package/src/browser/style/view-container.css +187 -187
- package/src/browser/style/widget.css +19 -19
- package/src/browser/styling-service.ts +96 -96
- package/src/browser/supported-encodings.ts +262 -262
- package/src/browser/test/jsdom.ts +69 -69
- package/src/browser/test/mock-connection-status-service.ts +33 -33
- package/src/browser/test/mock-env-variables-server.ts +47 -47
- package/src/browser/test/mock-opener-service.ts +34 -34
- package/src/browser/test/mock-storage-service.ts +49 -49
- package/src/browser/theming.ts +206 -206
- package/src/browser/tooltip-service.tsx +96 -96
- package/src/browser/tree/fuzzy-search.spec.ts +99 -99
- package/src/browser/tree/fuzzy-search.ts +136 -136
- package/src/browser/tree/index.ts +29 -29
- package/src/browser/tree/search-box-debounce.ts +96 -96
- package/src/browser/tree/search-box.ts +355 -355
- package/src/browser/tree/test/mock-selectable-tree-model.ts +109 -109
- package/src/browser/tree/test/mock-tree-model.ts +136 -136
- package/src/browser/tree/test/tree-test-container.ts +50 -50
- package/src/browser/tree/tree-compression/compressed-tree-expansion-service.ts +46 -46
- package/src/browser/tree/tree-compression/compressed-tree-model.ts +88 -88
- package/src/browser/tree/tree-compression/compressed-tree-widget.tsx +203 -203
- package/src/browser/tree/tree-compression/index.ts +20 -20
- package/src/browser/tree/tree-compression/tree-compression-service.ts +125 -125
- package/src/browser/tree/tree-compression/tree-compression.css +28 -28
- package/src/browser/tree/tree-consistency.spec.ts +105 -105
- package/src/browser/tree/tree-container.spec.ts +45 -45
- package/src/browser/tree/tree-container.ts +155 -155
- package/src/browser/tree/tree-decorator.spec.ts +162 -162
- package/src/browser/tree/tree-decorator.ts +238 -238
- package/src/browser/tree/tree-expansion.spec.ts +173 -173
- package/src/browser/tree/tree-expansion.ts +165 -165
- package/src/browser/tree/tree-focus-service.ts +55 -55
- package/src/browser/tree/tree-iterator.spec.ts +170 -170
- package/src/browser/tree/tree-iterator.ts +256 -256
- package/src/browser/tree/tree-label-provider.ts +40 -40
- package/src/browser/tree/tree-model.ts +562 -562
- package/src/browser/tree/tree-navigation.ts +58 -58
- package/src/browser/tree/tree-preference.ts +50 -50
- package/src/browser/tree/tree-search.ts +128 -128
- package/src/browser/tree/tree-selectable.spec.ts +152 -152
- package/src/browser/tree/tree-selection-impl.ts +176 -176
- package/src/browser/tree/tree-selection-state.spec.ts +462 -462
- package/src/browser/tree/tree-selection-state.ts +245 -245
- package/src/browser/tree/tree-selection.ts +159 -159
- package/src/browser/tree/tree-view-welcome-widget.tsx +263 -263
- package/src/browser/tree/tree-widget-selection.ts +45 -45
- package/src/browser/tree/tree-widget.tsx +1591 -1591
- package/src/browser/tree/tree.spec.ts +241 -241
- package/src/browser/tree/tree.ts +425 -425
- package/src/browser/undo-redo-handler.ts +85 -85
- package/src/browser/user-working-directory-provider.ts +77 -77
- package/src/browser/view-container.ts +1640 -1640
- package/src/browser/widget-decoration.ts +358 -358
- package/src/browser/widget-manager.spec.ts +102 -102
- package/src/browser/widget-manager.ts +318 -318
- package/src/browser/widget-open-handler.ts +168 -168
- package/src/browser/widgets/alert-message.tsx +56 -56
- package/src/browser/widgets/enhanced-preview-widget.ts +27 -27
- package/src/browser/widgets/extractable-widget.ts +33 -33
- package/src/browser/widgets/index.ts +21 -21
- package/src/browser/widgets/previewable-widget.ts +31 -31
- package/src/browser/widgets/react-renderer.tsx +53 -53
- package/src/browser/widgets/react-widget.tsx +51 -51
- package/src/browser/widgets/select-component.tsx +367 -367
- package/src/browser/widgets/split-widget.ts +163 -163
- package/src/browser/widgets/widget.ts +406 -406
- package/src/browser/window/browser-window-module.ts +32 -32
- package/src/browser/window/default-secondary-window-service.ts +189 -189
- package/src/browser/window/default-window-service.spec.ts +78 -78
- package/src/browser/window/default-window-service.ts +171 -171
- package/src/browser/window/secondary-window-service.ts +39 -39
- package/src/browser/window/test/mock-window-service.ts +29 -29
- package/src/browser/window/window-service.ts +78 -78
- package/src/browser/window/window-title-service.ts +107 -107
- package/src/browser/window/window-title-updater.ts +95 -95
- package/src/browser/window-contribution.ts +64 -64
- package/src/browser-only/frontend-only-application-module.ts +116 -116
- package/src/browser-only/i18n/i18n-frontend-only-module.ts +37 -37
- package/src/browser-only/logger-frontend-only-module.ts +63 -63
- package/src/browser-only/messaging/frontend-only-service-connection-provider.ts +39 -39
- package/src/browser-only/messaging/messaging-frontend-only-module.ts +42 -42
- package/src/browser-only/preload/frontend-only-preload-module.ts +49 -49
- package/src/common/accessibility.ts +33 -33
- package/src/common/application-error.spec.ts +27 -27
- package/src/common/application-error.ts +76 -76
- package/src/common/application-protocol.ts +42 -42
- package/src/common/array-utils.ts +129 -129
- package/src/common/buffer.ts +228 -228
- package/src/common/cancellation.ts +163 -163
- package/src/common/char-code.ts +438 -438
- package/src/common/collections.ts +125 -125
- package/src/common/color.ts +103 -103
- package/src/common/command.spec.ts +208 -208
- package/src/common/command.ts +489 -489
- package/src/common/contribution-filter/contribution-filter-registry.ts +79 -79
- package/src/common/contribution-filter/contribution-filter.ts +64 -64
- package/src/common/contribution-filter/filter.ts +23 -23
- package/src/common/contribution-filter/index.ts +19 -19
- package/src/common/contribution-provider.ts +96 -96
- package/src/common/disposable.spec.ts +94 -94
- package/src/common/disposable.ts +188 -188
- package/src/common/encoding-service.ts +380 -380
- package/src/common/encodings.ts +24 -24
- package/src/common/env-variables/env-variables-protocol.ts +38 -38
- package/src/common/env-variables/index.ts +17 -17
- package/src/common/event.spec.ts +32 -32
- package/src/common/event.ts +493 -493
- package/src/common/file-uri.ts +61 -61
- package/src/common/frontend-application-state.ts +38 -38
- package/src/common/glob.ts +741 -741
- package/src/common/hash.ts +85 -85
- package/src/common/i18n/localization-server.ts +25 -25
- package/src/common/i18n/localization.ts +80 -80
- package/src/common/i18n/nls.metadata.json +34112 -34112
- package/src/common/index.ts +51 -51
- package/src/common/json-schema.ts +108 -108
- package/src/common/key-store.ts +26 -26
- package/src/common/keybinding.ts +152 -152
- package/src/common/keyboard/keyboard-layout-provider.ts +51 -51
- package/src/common/keys.ts +694 -694
- package/src/common/label-protocol.ts +35 -35
- package/src/common/logger-protocol.ts +119 -119
- package/src/common/logger-watcher.ts +48 -48
- package/src/common/logger.spec.ts +46 -46
- package/src/common/logger.ts +389 -389
- package/src/common/lsp-types.ts +34 -34
- package/src/common/markdown-rendering/icon-utilities.ts +30 -30
- package/src/common/markdown-rendering/index.ts +18 -18
- package/src/common/markdown-rendering/markdown-string.ts +152 -152
- package/src/common/menu/action-menu-node.ts +65 -65
- package/src/common/menu/composite-menu-node.spec.ts +67 -67
- package/src/common/menu/composite-menu-node.ts +114 -114
- package/src/common/menu/index.ts +21 -21
- package/src/common/menu/menu-adapter.ts +103 -103
- package/src/common/menu/menu-model-registry.ts +374 -374
- package/src/common/menu/menu-types.ts +220 -220
- package/src/common/menu/menu.spec.ts +101 -101
- package/src/common/message-rpc/channel.spec.ts +88 -88
- package/src/common/message-rpc/channel.ts +300 -300
- package/src/common/message-rpc/index.ts +22 -22
- package/src/common/message-rpc/message-buffer.ts +105 -105
- package/src/common/message-rpc/msg-pack-extension-manager.ts +70 -70
- package/src/common/message-rpc/rpc-message-encoder.spec.ts +65 -65
- package/src/common/message-rpc/rpc-message-encoder.ts +190 -190
- package/src/common/message-rpc/rpc-protocol.ts +255 -255
- package/src/common/message-rpc/uint8-array-message-buffer.spec.ts +41 -41
- package/src/common/message-rpc/uint8-array-message-buffer.ts +213 -213
- package/src/common/message-service-protocol.ts +148 -148
- package/src/common/message-service.ts +226 -226
- package/src/common/messaging/connection-error-handler.ts +73 -73
- package/src/common/messaging/connection-management.ts +43 -43
- package/src/common/messaging/handler.ts +26 -26
- package/src/common/messaging/index.ts +19 -19
- package/src/common/messaging/proxy-factory.spec.ts +108 -108
- package/src/common/messaging/proxy-factory.ts +336 -336
- package/src/common/messaging/socket-write-buffer.ts +52 -52
- package/src/common/messaging/web-socket-channel.ts +76 -76
- package/src/common/nls.ts +151 -151
- package/src/common/numbers.ts +21 -21
- package/src/common/objects.spec.ts +112 -112
- package/src/common/objects.ts +123 -123
- package/src/common/os.ts +82 -82
- package/src/common/path.spec.ts +415 -415
- package/src/common/path.ts +334 -334
- package/src/common/paths.ts +250 -250
- package/src/common/performance/index.ts +19 -19
- package/src/common/performance/measurement-protocol.ts +104 -104
- package/src/common/performance/measurement.ts +130 -130
- package/src/common/performance/stopwatch.ts +183 -183
- package/src/common/preferences/preference-schema.ts +101 -101
- package/src/common/preferences/preference-scope.spec.ts +48 -48
- package/src/common/preferences/preference-scope.ts +68 -68
- package/src/common/prioritizeable.ts +58 -58
- package/src/common/progress-service-protocol.ts +35 -35
- package/src/common/progress-service.ts +82 -82
- package/src/common/promise-util.spec.ts +102 -102
- package/src/common/promise-util.ts +143 -143
- package/src/common/quick-pick-service.ts +353 -353
- package/src/common/reference.spec.ts +145 -145
- package/src/common/reference.ts +230 -230
- package/src/common/resource.ts +430 -430
- package/src/common/selection-command-handler.ts +101 -101
- package/src/common/selection-service.spec.ts +43 -43
- package/src/common/selection-service.ts +49 -49
- package/src/common/selection.ts +50 -50
- package/src/common/severity.ts +111 -111
- package/src/common/stream.ts +718 -718
- package/src/common/strings.ts +231 -231
- package/src/common/telemetry.ts +45 -45
- package/src/common/ternary-search-tree.ts +417 -417
- package/src/common/test/expect.ts +34 -34
- package/src/common/test/mock-logger.ts +118 -118
- package/src/common/test/mock-menu.ts +35 -35
- package/src/common/test/mock-resource-provider.ts +33 -33
- package/src/common/theme.ts +68 -68
- package/src/common/types.spec.ts +86 -86
- package/src/common/types.ts +140 -140
- package/src/common/uri-command-handler.spec.ts +90 -90
- package/src/common/uri-command-handler.ts +148 -148
- package/src/common/uri.spec.ts +278 -278
- package/src/common/uri.ts +279 -279
- package/src/common/uuid.ts +45 -45
- package/src/common/version.ts +17 -17
- package/src/common/view-column.ts +33 -33
- package/src/common/window.ts +34 -34
- package/src/electron-browser/electron-clipboard-service.ts +32 -32
- package/src/electron-browser/electron-uri-handler.ts +42 -42
- package/src/electron-browser/keyboard/electron-keyboard-layout-change-notifier.ts +39 -39
- package/src/electron-browser/keyboard/electron-keyboard-module.ts +28 -28
- package/src/electron-browser/menu/electron-context-menu-renderer.ts +122 -122
- package/src/electron-browser/menu/electron-main-menu-factory.ts +339 -339
- package/src/electron-browser/menu/electron-menu-contribution.ts +506 -506
- package/src/electron-browser/menu/electron-menu-module.ts +40 -40
- package/src/electron-browser/menu/electron-menu-style.css +110 -110
- package/src/electron-browser/messaging/electron-frontend-id-provider.ts +25 -25
- package/src/electron-browser/messaging/electron-ipc-connection-source.ts +65 -65
- package/src/electron-browser/messaging/electron-local-ws-connection-source.ts +45 -45
- package/src/electron-browser/messaging/electron-messaging-frontend-module.ts +78 -78
- package/src/electron-browser/messaging/electron-ws-connection-source.ts +38 -38
- package/src/electron-browser/preload.ts +264 -264
- package/src/electron-browser/request/electron-browser-request-module.ts +26 -26
- package/src/electron-browser/token/electron-token-frontend-module.ts +22 -22
- package/src/electron-browser/window/electron-frontend-application-state.ts +26 -26
- package/src/electron-browser/window/electron-secondary-window-service.ts +35 -35
- package/src/electron-browser/window/electron-window-module.ts +48 -48
- package/src/electron-browser/window/electron-window-preferences.ts +76 -76
- package/src/electron-browser/window/electron-window-service.ts +109 -109
- package/src/electron-browser/window/external-app-open-handler.ts +42 -42
- package/src/electron-common/electron-api.ts +157 -157
- package/src/electron-common/electron-main-window-service.ts +24 -24
- package/src/electron-common/electron-token.ts +27 -27
- package/src/electron-main/electron-api-main.ts +373 -373
- package/src/electron-main/electron-main-application-module.ts +65 -65
- package/src/electron-main/electron-main-application.ts +860 -860
- package/src/electron-main/electron-main-constants.ts +23 -23
- package/src/electron-main/electron-main-window-service-impl.ts +44 -44
- package/src/electron-main/electron-security-token-service.ts +36 -36
- package/src/electron-main/event-utils.ts +36 -36
- package/src/electron-main/messaging/electron-connection-handler.ts +21 -21
- package/src/electron-main/messaging/electron-messaging-contribution.ts +143 -143
- package/src/electron-main/messaging/electron-messaging-service.ts +35 -35
- package/src/electron-main/theia-electron-window.ts +219 -219
- package/src/electron-node/cli/electron-backend-cli-module.ts +24 -24
- package/src/electron-node/cli/electron-cli-contribution.ts +35 -35
- package/src/electron-node/hosting/electron-backend-hosting-module.ts +24 -24
- package/src/electron-node/hosting/electron-ws-origin-validator.ts +37 -37
- package/src/electron-node/keyboard/electron-backend-keyboard-module.ts +30 -30
- package/src/electron-node/keyboard/electron-keyboard-layout-provider.ts +35 -35
- package/src/electron-node/request/electron-backend-request-module.ts +23 -23
- package/src/electron-node/request/electron-backend-request-service.ts +78 -78
- package/src/electron-node/token/electron-token-backend-contribution.ts +48 -48
- package/src/electron-node/token/electron-token-backend-module.ts +28 -28
- package/src/electron-node/token/electron-token-validator.ts +93 -93
- package/src/node/application-server.ts +59 -59
- package/src/node/backend-application-config-provider.spec.ts +29 -29
- package/src/node/backend-application-config-provider.ts +48 -48
- package/src/node/backend-application-module.ts +139 -139
- package/src/node/backend-application.ts +374 -374
- package/src/node/cli.spec.ts +94 -94
- package/src/node/cli.ts +63 -63
- package/src/node/console-logger-server.spec.ts +59 -59
- package/src/node/console-logger-server.ts +76 -76
- package/src/node/debug.ts +30 -30
- package/src/node/dynamic-require.ts +56 -56
- package/src/node/env-variables/env-variables-server.ts +123 -123
- package/src/node/env-variables/index.ts +17 -17
- package/src/node/environment-utils.spec.ts +92 -92
- package/src/node/environment-utils.ts +66 -66
- package/src/node/file-uri.spec.ts +76 -76
- package/src/node/filesystem-locking.ts +77 -77
- package/src/node/hosting/backend-application-hosts.ts +60 -60
- package/src/node/hosting/backend-hosting-module.ts +26 -26
- package/src/node/hosting/ws-origin-validator.ts +36 -36
- package/src/node/i18n/i18n-backend-module.ts +42 -42
- package/src/node/i18n/localization-contribution.ts +112 -112
- package/src/node/i18n/localization-provider.ts +125 -125
- package/src/node/i18n/localization-server.ts +52 -52
- package/src/node/i18n/theia-localization-contribution.ts +40 -40
- package/src/node/index.ts +22 -22
- package/src/node/key-store-server.ts +162 -162
- package/src/node/logger-backend-module.ts +88 -88
- package/src/node/logger-cli-contribution.spec.ts +245 -245
- package/src/node/logger-cli-contribution.ts +168 -168
- package/src/node/main.ts +33 -33
- package/src/node/messaging/binary-message-pipe.ts +168 -168
- package/src/node/messaging/connection-container-module.ts +96 -96
- package/src/node/messaging/default-messaging-service.ts +129 -129
- package/src/node/messaging/frontend-connection-service.ts +24 -24
- package/src/node/messaging/index.ts +19 -19
- package/src/node/messaging/ipc-bootstrap.ts +27 -27
- package/src/node/messaging/ipc-channel.ts +77 -77
- package/src/node/messaging/ipc-connection-provider.ts +107 -107
- package/src/node/messaging/ipc-protocol.ts +76 -76
- package/src/node/messaging/messaging-backend-module.ts +52 -52
- package/src/node/messaging/messaging-listeners.ts +52 -52
- package/src/node/messaging/messaging-service.ts +46 -46
- package/src/node/messaging/test/test-web-socket-channel.ts +61 -61
- package/src/node/messaging/websocket-endpoint.ts +79 -79
- package/src/node/messaging/websocket-frontend-connection-service.ts +186 -186
- package/src/node/os-backend-provider.ts +25 -25
- package/src/node/performance/index.ts +18 -18
- package/src/node/performance/measurement-backend-bindings.ts +35 -35
- package/src/node/performance/node-stopwatch.ts +40 -40
- package/src/node/process-utils.spec.ts +48 -48
- package/src/node/process-utils.ts +102 -102
- package/src/node/remote/backend-remote-service.ts +25 -25
- package/src/node/remote/remote-cli-contribution.ts +34 -34
- package/src/node/remote/remote-copy-contribution.ts +45 -45
- package/src/node/request/backend-request-facade.ts +39 -39
- package/src/node/request/backend-request-module.ts +25 -25
- package/src/node/request/proxy-cli-contribution.ts +65 -65
- package/src/node/ws-request-validators.ts +56 -56
- package/src/typings/native-keymap.d.ts +108 -108
|
@@ -1,217 +1,217 @@
|
|
|
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
|
-
import { injectable, inject, postConstruct } from 'inversify';
|
|
18
|
-
import { Emitter } from '../common/event';
|
|
19
|
-
import { Disposable, DisposableCollection } from '../common/disposable';
|
|
20
|
-
import { LabelProviderContribution, DidChangeLabelEvent } from './label-provider';
|
|
21
|
-
import { FrontendApplicationConfigProvider } from './frontend-application-config-provider';
|
|
22
|
-
import { PreferenceService, PreferenceSchemaProvider } from './preferences';
|
|
23
|
-
import debounce = require('lodash.debounce');
|
|
24
|
-
|
|
25
|
-
const ICON_THEME_PREFERENCE_KEY = 'workbench.iconTheme';
|
|
26
|
-
|
|
27
|
-
export interface IconThemeDefinition {
|
|
28
|
-
readonly id: string
|
|
29
|
-
readonly label: string
|
|
30
|
-
readonly description?: string
|
|
31
|
-
readonly hasFileIcons?: boolean;
|
|
32
|
-
readonly hasFolderIcons?: boolean;
|
|
33
|
-
readonly hidesExplorerArrows?: boolean;
|
|
34
|
-
readonly showLanguageModeIcons?: boolean;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export interface IconTheme extends IconThemeDefinition {
|
|
38
|
-
activate(): Disposable;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
@injectable()
|
|
42
|
-
export class NoneIconTheme implements IconTheme, LabelProviderContribution {
|
|
43
|
-
|
|
44
|
-
readonly id = 'none';
|
|
45
|
-
readonly label = 'None';
|
|
46
|
-
readonly description = 'Disable file icons';
|
|
47
|
-
readonly hasFileIcons = true;
|
|
48
|
-
readonly hasFolderIcons = true;
|
|
49
|
-
|
|
50
|
-
protected readonly onDidChangeEmitter = new Emitter<DidChangeLabelEvent>();
|
|
51
|
-
readonly onDidChange = this.onDidChangeEmitter.event;
|
|
52
|
-
|
|
53
|
-
protected readonly toDeactivate = new DisposableCollection();
|
|
54
|
-
|
|
55
|
-
activate(): Disposable {
|
|
56
|
-
if (this.toDeactivate.disposed) {
|
|
57
|
-
this.toDeactivate.push(Disposable.create(() => this.fireDidChange()));
|
|
58
|
-
this.fireDidChange();
|
|
59
|
-
}
|
|
60
|
-
return this.toDeactivate;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
protected fireDidChange(): void {
|
|
64
|
-
this.onDidChangeEmitter.fire({ affects: () => true });
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
canHandle(): number {
|
|
68
|
-
if (this.toDeactivate.disposed) {
|
|
69
|
-
return 0;
|
|
70
|
-
}
|
|
71
|
-
return Number.MAX_SAFE_INTEGER - 1024;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
getIcon(): string {
|
|
75
|
-
return '';
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
@injectable()
|
|
81
|
-
export class IconThemeService {
|
|
82
|
-
static readonly STORAGE_KEY = 'iconTheme';
|
|
83
|
-
|
|
84
|
-
protected readonly onDidChangeEmitter = new Emitter<void>();
|
|
85
|
-
readonly onDidChange = this.onDidChangeEmitter.event;
|
|
86
|
-
|
|
87
|
-
protected readonly _iconThemes = new Map<string, IconTheme>();
|
|
88
|
-
get ids(): IterableIterator<string> {
|
|
89
|
-
return this._iconThemes.keys();
|
|
90
|
-
}
|
|
91
|
-
get definitions(): IterableIterator<IconThemeDefinition> {
|
|
92
|
-
return this._iconThemes.values();
|
|
93
|
-
}
|
|
94
|
-
getDefinition(id: string): IconThemeDefinition | undefined {
|
|
95
|
-
return this._iconThemes.get(id);
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
@inject(NoneIconTheme) protected readonly noneIconTheme: NoneIconTheme;
|
|
99
|
-
@inject(PreferenceService) protected readonly preferences: PreferenceService;
|
|
100
|
-
@inject(PreferenceSchemaProvider) protected readonly schemaProvider: PreferenceSchemaProvider;
|
|
101
|
-
|
|
102
|
-
protected readonly onDidChangeCurrentEmitter = new Emitter<string>();
|
|
103
|
-
readonly onDidChangeCurrent = this.onDidChangeCurrentEmitter.event;
|
|
104
|
-
|
|
105
|
-
protected readonly toDeactivate = new DisposableCollection();
|
|
106
|
-
|
|
107
|
-
protected activeTheme: IconTheme;
|
|
108
|
-
|
|
109
|
-
@postConstruct()
|
|
110
|
-
protected init(): void {
|
|
111
|
-
this.register(this.fallback);
|
|
112
|
-
this.setCurrent(this.fallback, false);
|
|
113
|
-
this.preferences.ready.then(() => {
|
|
114
|
-
this.validateActiveTheme();
|
|
115
|
-
this.updateIconThemePreference();
|
|
116
|
-
this.preferences.onPreferencesChanged(changes => {
|
|
117
|
-
if (ICON_THEME_PREFERENCE_KEY in changes) {
|
|
118
|
-
this.validateActiveTheme();
|
|
119
|
-
}
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
register(iconTheme: IconTheme): Disposable {
|
|
125
|
-
if (this._iconThemes.has(iconTheme.id)) {
|
|
126
|
-
console.warn(new Error(`Icon theme '${iconTheme.id}' has already been registered, skipping.`));
|
|
127
|
-
return Disposable.NULL;
|
|
128
|
-
}
|
|
129
|
-
this._iconThemes.set(iconTheme.id, iconTheme);
|
|
130
|
-
this.onDidChangeEmitter.fire(undefined);
|
|
131
|
-
this.validateActiveTheme();
|
|
132
|
-
this.updateIconThemePreference();
|
|
133
|
-
return Disposable.create(() => {
|
|
134
|
-
this.unregister(iconTheme.id);
|
|
135
|
-
this.updateIconThemePreference();
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
unregister(id: string): IconTheme | undefined {
|
|
140
|
-
const iconTheme = this._iconThemes.get(id);
|
|
141
|
-
if (!iconTheme) {
|
|
142
|
-
return undefined;
|
|
143
|
-
}
|
|
144
|
-
this._iconThemes.delete(id);
|
|
145
|
-
this.onDidChangeEmitter.fire(undefined);
|
|
146
|
-
if (id === this.getCurrent().id) {
|
|
147
|
-
this.setCurrent(this.default, false);
|
|
148
|
-
}
|
|
149
|
-
return iconTheme;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
get current(): string {
|
|
153
|
-
return this.getCurrent().id;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
set current(id: string) {
|
|
157
|
-
const newCurrent = this._iconThemes.get(id);
|
|
158
|
-
if (newCurrent && this.getCurrent().id !== newCurrent.id) {
|
|
159
|
-
this.setCurrent(newCurrent);
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
getCurrent(): IconTheme {
|
|
164
|
-
return this.activeTheme;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
/**
|
|
168
|
-
* @param persistSetting If `true`, the theme's id will be set as the value of the `workbench.iconTheme` preference. (default: `true`)
|
|
169
|
-
*/
|
|
170
|
-
setCurrent(newCurrent: IconTheme, persistSetting = true): void {
|
|
171
|
-
if (newCurrent !== this.getCurrent()) {
|
|
172
|
-
this.activeTheme = newCurrent;
|
|
173
|
-
this.toDeactivate.dispose();
|
|
174
|
-
this.toDeactivate.push(newCurrent.activate());
|
|
175
|
-
this.onDidChangeCurrentEmitter.fire(newCurrent.id);
|
|
176
|
-
}
|
|
177
|
-
if (persistSetting) {
|
|
178
|
-
this.preferences.updateValue(ICON_THEME_PREFERENCE_KEY, newCurrent.id);
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
protected getConfiguredTheme(): IconTheme | undefined {
|
|
183
|
-
const configuredId = this.preferences.get<string>(ICON_THEME_PREFERENCE_KEY);
|
|
184
|
-
return configuredId ? this._iconThemes.get(configuredId) : undefined;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
protected validateActiveTheme(): void {
|
|
188
|
-
if (this.preferences.isReady) {
|
|
189
|
-
const configured = this.getConfiguredTheme();
|
|
190
|
-
if (configured && configured !== this.getCurrent()) {
|
|
191
|
-
this.setCurrent(configured, false);
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
protected updateIconThemePreference = debounce(() => this.doUpdateIconThemePreference(), 500);
|
|
197
|
-
|
|
198
|
-
protected doUpdateIconThemePreference(): void {
|
|
199
|
-
const preference = this.schemaProvider.getSchemaProperty(ICON_THEME_PREFERENCE_KEY);
|
|
200
|
-
if (preference) {
|
|
201
|
-
const sortedThemes = Array.from(this.definitions).sort((a, b) => a.label.localeCompare(b.label));
|
|
202
|
-
this.schemaProvider.updateSchemaProperty(ICON_THEME_PREFERENCE_KEY, {
|
|
203
|
-
...preference,
|
|
204
|
-
enum: sortedThemes.map(e => e.id),
|
|
205
|
-
enumItemLabels: sortedThemes.map(e => e.label)
|
|
206
|
-
});
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
get default(): IconTheme {
|
|
211
|
-
return this._iconThemes.get(FrontendApplicationConfigProvider.get().defaultIconTheme) || this.fallback;
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
get fallback(): IconTheme {
|
|
215
|
-
return this.noneIconTheme;
|
|
216
|
-
}
|
|
217
|
-
}
|
|
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
|
+
import { injectable, inject, postConstruct } from 'inversify';
|
|
18
|
+
import { Emitter } from '../common/event';
|
|
19
|
+
import { Disposable, DisposableCollection } from '../common/disposable';
|
|
20
|
+
import { LabelProviderContribution, DidChangeLabelEvent } from './label-provider';
|
|
21
|
+
import { FrontendApplicationConfigProvider } from './frontend-application-config-provider';
|
|
22
|
+
import { PreferenceService, PreferenceSchemaProvider } from './preferences';
|
|
23
|
+
import debounce = require('lodash.debounce');
|
|
24
|
+
|
|
25
|
+
const ICON_THEME_PREFERENCE_KEY = 'workbench.iconTheme';
|
|
26
|
+
|
|
27
|
+
export interface IconThemeDefinition {
|
|
28
|
+
readonly id: string
|
|
29
|
+
readonly label: string
|
|
30
|
+
readonly description?: string
|
|
31
|
+
readonly hasFileIcons?: boolean;
|
|
32
|
+
readonly hasFolderIcons?: boolean;
|
|
33
|
+
readonly hidesExplorerArrows?: boolean;
|
|
34
|
+
readonly showLanguageModeIcons?: boolean;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export interface IconTheme extends IconThemeDefinition {
|
|
38
|
+
activate(): Disposable;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@injectable()
|
|
42
|
+
export class NoneIconTheme implements IconTheme, LabelProviderContribution {
|
|
43
|
+
|
|
44
|
+
readonly id = 'none';
|
|
45
|
+
readonly label = 'None';
|
|
46
|
+
readonly description = 'Disable file icons';
|
|
47
|
+
readonly hasFileIcons = true;
|
|
48
|
+
readonly hasFolderIcons = true;
|
|
49
|
+
|
|
50
|
+
protected readonly onDidChangeEmitter = new Emitter<DidChangeLabelEvent>();
|
|
51
|
+
readonly onDidChange = this.onDidChangeEmitter.event;
|
|
52
|
+
|
|
53
|
+
protected readonly toDeactivate = new DisposableCollection();
|
|
54
|
+
|
|
55
|
+
activate(): Disposable {
|
|
56
|
+
if (this.toDeactivate.disposed) {
|
|
57
|
+
this.toDeactivate.push(Disposable.create(() => this.fireDidChange()));
|
|
58
|
+
this.fireDidChange();
|
|
59
|
+
}
|
|
60
|
+
return this.toDeactivate;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
protected fireDidChange(): void {
|
|
64
|
+
this.onDidChangeEmitter.fire({ affects: () => true });
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
canHandle(): number {
|
|
68
|
+
if (this.toDeactivate.disposed) {
|
|
69
|
+
return 0;
|
|
70
|
+
}
|
|
71
|
+
return Number.MAX_SAFE_INTEGER - 1024;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
getIcon(): string {
|
|
75
|
+
return '';
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
@injectable()
|
|
81
|
+
export class IconThemeService {
|
|
82
|
+
static readonly STORAGE_KEY = 'iconTheme';
|
|
83
|
+
|
|
84
|
+
protected readonly onDidChangeEmitter = new Emitter<void>();
|
|
85
|
+
readonly onDidChange = this.onDidChangeEmitter.event;
|
|
86
|
+
|
|
87
|
+
protected readonly _iconThemes = new Map<string, IconTheme>();
|
|
88
|
+
get ids(): IterableIterator<string> {
|
|
89
|
+
return this._iconThemes.keys();
|
|
90
|
+
}
|
|
91
|
+
get definitions(): IterableIterator<IconThemeDefinition> {
|
|
92
|
+
return this._iconThemes.values();
|
|
93
|
+
}
|
|
94
|
+
getDefinition(id: string): IconThemeDefinition | undefined {
|
|
95
|
+
return this._iconThemes.get(id);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
@inject(NoneIconTheme) protected readonly noneIconTheme: NoneIconTheme;
|
|
99
|
+
@inject(PreferenceService) protected readonly preferences: PreferenceService;
|
|
100
|
+
@inject(PreferenceSchemaProvider) protected readonly schemaProvider: PreferenceSchemaProvider;
|
|
101
|
+
|
|
102
|
+
protected readonly onDidChangeCurrentEmitter = new Emitter<string>();
|
|
103
|
+
readonly onDidChangeCurrent = this.onDidChangeCurrentEmitter.event;
|
|
104
|
+
|
|
105
|
+
protected readonly toDeactivate = new DisposableCollection();
|
|
106
|
+
|
|
107
|
+
protected activeTheme: IconTheme;
|
|
108
|
+
|
|
109
|
+
@postConstruct()
|
|
110
|
+
protected init(): void {
|
|
111
|
+
this.register(this.fallback);
|
|
112
|
+
this.setCurrent(this.fallback, false);
|
|
113
|
+
this.preferences.ready.then(() => {
|
|
114
|
+
this.validateActiveTheme();
|
|
115
|
+
this.updateIconThemePreference();
|
|
116
|
+
this.preferences.onPreferencesChanged(changes => {
|
|
117
|
+
if (ICON_THEME_PREFERENCE_KEY in changes) {
|
|
118
|
+
this.validateActiveTheme();
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
register(iconTheme: IconTheme): Disposable {
|
|
125
|
+
if (this._iconThemes.has(iconTheme.id)) {
|
|
126
|
+
console.warn(new Error(`Icon theme '${iconTheme.id}' has already been registered, skipping.`));
|
|
127
|
+
return Disposable.NULL;
|
|
128
|
+
}
|
|
129
|
+
this._iconThemes.set(iconTheme.id, iconTheme);
|
|
130
|
+
this.onDidChangeEmitter.fire(undefined);
|
|
131
|
+
this.validateActiveTheme();
|
|
132
|
+
this.updateIconThemePreference();
|
|
133
|
+
return Disposable.create(() => {
|
|
134
|
+
this.unregister(iconTheme.id);
|
|
135
|
+
this.updateIconThemePreference();
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
unregister(id: string): IconTheme | undefined {
|
|
140
|
+
const iconTheme = this._iconThemes.get(id);
|
|
141
|
+
if (!iconTheme) {
|
|
142
|
+
return undefined;
|
|
143
|
+
}
|
|
144
|
+
this._iconThemes.delete(id);
|
|
145
|
+
this.onDidChangeEmitter.fire(undefined);
|
|
146
|
+
if (id === this.getCurrent().id) {
|
|
147
|
+
this.setCurrent(this.default, false);
|
|
148
|
+
}
|
|
149
|
+
return iconTheme;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
get current(): string {
|
|
153
|
+
return this.getCurrent().id;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
set current(id: string) {
|
|
157
|
+
const newCurrent = this._iconThemes.get(id);
|
|
158
|
+
if (newCurrent && this.getCurrent().id !== newCurrent.id) {
|
|
159
|
+
this.setCurrent(newCurrent);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
getCurrent(): IconTheme {
|
|
164
|
+
return this.activeTheme;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
/**
|
|
168
|
+
* @param persistSetting If `true`, the theme's id will be set as the value of the `workbench.iconTheme` preference. (default: `true`)
|
|
169
|
+
*/
|
|
170
|
+
setCurrent(newCurrent: IconTheme, persistSetting = true): void {
|
|
171
|
+
if (newCurrent !== this.getCurrent()) {
|
|
172
|
+
this.activeTheme = newCurrent;
|
|
173
|
+
this.toDeactivate.dispose();
|
|
174
|
+
this.toDeactivate.push(newCurrent.activate());
|
|
175
|
+
this.onDidChangeCurrentEmitter.fire(newCurrent.id);
|
|
176
|
+
}
|
|
177
|
+
if (persistSetting) {
|
|
178
|
+
this.preferences.updateValue(ICON_THEME_PREFERENCE_KEY, newCurrent.id);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
protected getConfiguredTheme(): IconTheme | undefined {
|
|
183
|
+
const configuredId = this.preferences.get<string>(ICON_THEME_PREFERENCE_KEY);
|
|
184
|
+
return configuredId ? this._iconThemes.get(configuredId) : undefined;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
protected validateActiveTheme(): void {
|
|
188
|
+
if (this.preferences.isReady) {
|
|
189
|
+
const configured = this.getConfiguredTheme();
|
|
190
|
+
if (configured && configured !== this.getCurrent()) {
|
|
191
|
+
this.setCurrent(configured, false);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
protected updateIconThemePreference = debounce(() => this.doUpdateIconThemePreference(), 500);
|
|
197
|
+
|
|
198
|
+
protected doUpdateIconThemePreference(): void {
|
|
199
|
+
const preference = this.schemaProvider.getSchemaProperty(ICON_THEME_PREFERENCE_KEY);
|
|
200
|
+
if (preference) {
|
|
201
|
+
const sortedThemes = Array.from(this.definitions).sort((a, b) => a.label.localeCompare(b.label));
|
|
202
|
+
this.schemaProvider.updateSchemaProperty(ICON_THEME_PREFERENCE_KEY, {
|
|
203
|
+
...preference,
|
|
204
|
+
enum: sortedThemes.map(e => e.id),
|
|
205
|
+
enumItemLabels: sortedThemes.map(e => e.label)
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
get default(): IconTheme {
|
|
211
|
+
return this._iconThemes.get(FrontendApplicationConfigProvider.get().defaultIconTheme) || this.fallback;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
get fallback(): IconTheme {
|
|
215
|
+
return this.noneIconTheme;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" enable-background="new -1 0 16 16" viewBox="-1 0 16 16">
|
|
5
|
-
<path fill="#424242" d="M14 1v9h-1v-8h-8v-1h9zm-11 2v1h8v8h1v-9h-9zm7 2v9h-9v-9h9zm-2 2h-5v5h5v-5z"/>
|
|
6
|
-
<rect width="3" height="1" x="4" y="9" fill="#00539C"/>
|
|
7
|
-
</svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" enable-background="new -1 0 16 16" viewBox="-1 0 16 16">
|
|
5
|
+
<path fill="#424242" d="M14 1v9h-1v-8h-8v-1h9zm-11 2v1h8v8h1v-9h-9zm7 2v9h-9v-9h9zm-2 2h-5v5h5v-5z"/>
|
|
6
|
+
<rect width="3" height="1" x="4" y="9" fill="#00539C"/>
|
|
7
|
+
</svg>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" enable-background="new -1 0 16 16" viewBox="-1 0 16 16">
|
|
5
|
-
<path fill="#C5C5C5" d="M14 1v9h-1v-8h-8v-1h9zm-11 2v1h8v8h1v-9h-9zm7 2v9h-9v-9h9zm-2 2h-5v5h5v-5z"/>
|
|
6
|
-
<rect width="3" height="1" x="4" y="9" fill="#75BEFF"/>
|
|
7
|
-
</svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" enable-background="new -1 0 16 16" viewBox="-1 0 16 16">
|
|
5
|
+
<path fill="#C5C5C5" d="M14 1v9h-1v-8h-8v-1h9zm-11 2v1h8v8h1v-9h-9zm7 2v9h-9v-9h9zm-2 2h-5v5h5v-5z"/>
|
|
6
|
+
<rect width="3" height="1" x="4" y="9" fill="#75BEFF"/>
|
|
7
|
+
</svg>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
|
|
5
|
-
<path fill="#F6F6F6" d="M13.451 5.609l-.579-.939-1.068.812-.076.094c-.335.415-.927 1.341-1.124 2.876l-.021.165.033.163.071.345c0 1.654-1.346 3-3 3-.795 0-1.545-.311-2.107-.868-.563-.567-.873-1.317-.873-2.111 0-1.431 1.007-2.632 2.351-2.929v2.926s2.528-2.087 2.984-2.461h.012l3.061-2.582-4.919-4.1h-1.137v2.404c-3.429.318-6.121 3.211-6.121 6.721 0 1.809.707 3.508 1.986 4.782 1.277 1.282 2.976 1.988 4.784 1.988 3.722 0 6.75-3.028 6.75-6.75 0-1.245-.349-2.468-1.007-3.536z"/>
|
|
6
|
-
<path fill="#424242" d="M12.6 6.134l-.094.071c-.269.333-.746 1.096-.91 2.375.057.277.092.495.092.545 0 2.206-1.794 4-4 4-1.098 0-2.093-.445-2.817-1.164-.718-.724-1.163-1.718-1.163-2.815 0-2.206 1.794-4 4-4l.351.025v1.85s1.626-1.342 1.631-1.339l1.869-1.577-3.5-2.917v2.218l-.371-.03c-3.176 0-5.75 2.574-5.75 5.75 0 1.593.648 3.034 1.695 4.076 1.042 1.046 2.482 1.694 4.076 1.694 3.176 0 5.75-2.574 5.75-5.75-.001-1.106-.318-2.135-.859-3.012z"/>
|
|
7
|
-
</svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
|
|
5
|
+
<path fill="#F6F6F6" d="M13.451 5.609l-.579-.939-1.068.812-.076.094c-.335.415-.927 1.341-1.124 2.876l-.021.165.033.163.071.345c0 1.654-1.346 3-3 3-.795 0-1.545-.311-2.107-.868-.563-.567-.873-1.317-.873-2.111 0-1.431 1.007-2.632 2.351-2.929v2.926s2.528-2.087 2.984-2.461h.012l3.061-2.582-4.919-4.1h-1.137v2.404c-3.429.318-6.121 3.211-6.121 6.721 0 1.809.707 3.508 1.986 4.782 1.277 1.282 2.976 1.988 4.784 1.988 3.722 0 6.75-3.028 6.75-6.75 0-1.245-.349-2.468-1.007-3.536z"/>
|
|
6
|
+
<path fill="#424242" d="M12.6 6.134l-.094.071c-.269.333-.746 1.096-.91 2.375.057.277.092.495.092.545 0 2.206-1.794 4-4 4-1.098 0-2.093-.445-2.817-1.164-.718-.724-1.163-1.718-1.163-2.815 0-2.206 1.794-4 4-4l.351.025v1.85s1.626-1.342 1.631-1.339l1.869-1.577-3.5-2.917v2.218l-.371-.03c-3.176 0-5.75 2.574-5.75 5.75 0 1.593.648 3.034 1.695 4.076 1.042 1.046 2.482 1.694 4.076 1.694 3.176 0 5.75-2.574 5.75-5.75-.001-1.106-.318-2.135-.859-3.012z"/>
|
|
7
|
+
</svg>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
|
|
5
|
-
<path fill="#2D2D30" d="M13.451 5.609l-.579-.939-1.068.812-.076.094c-.335.415-.927 1.341-1.124 2.876l-.021.165.033.163.071.345c0 1.654-1.346 3-3 3-.795 0-1.545-.311-2.107-.868-.563-.567-.873-1.317-.873-2.111 0-1.431 1.007-2.632 2.351-2.929v2.926s2.528-2.087 2.984-2.461h.012l3.061-2.582-4.919-4.1h-1.137v2.404c-3.429.318-6.121 3.211-6.121 6.721 0 1.809.707 3.508 1.986 4.782 1.277 1.282 2.976 1.988 4.784 1.988 3.722 0 6.75-3.028 6.75-6.75 0-1.245-.349-2.468-1.007-3.536z"/>
|
|
6
|
-
<path fill="#C5C5C5" d="M12.6 6.134l-.094.071c-.269.333-.746 1.096-.91 2.375.057.277.092.495.092.545 0 2.206-1.794 4-4 4-1.098 0-2.093-.445-2.817-1.164-.718-.724-1.163-1.718-1.163-2.815 0-2.206 1.794-4 4-4l.351.025v1.85s1.626-1.342 1.631-1.339l1.869-1.577-3.5-2.917v2.218l-.371-.03c-3.176 0-5.75 2.574-5.75 5.75 0 1.593.648 3.034 1.695 4.076 1.042 1.046 2.482 1.694 4.076 1.694 3.176 0 5.75-2.574 5.75-5.75-.001-1.106-.318-2.135-.859-3.012z"/>
|
|
7
|
-
</svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
|
|
5
|
+
<path fill="#2D2D30" d="M13.451 5.609l-.579-.939-1.068.812-.076.094c-.335.415-.927 1.341-1.124 2.876l-.021.165.033.163.071.345c0 1.654-1.346 3-3 3-.795 0-1.545-.311-2.107-.868-.563-.567-.873-1.317-.873-2.111 0-1.431 1.007-2.632 2.351-2.929v2.926s2.528-2.087 2.984-2.461h.012l3.061-2.582-4.919-4.1h-1.137v2.404c-3.429.318-6.121 3.211-6.121 6.721 0 1.809.707 3.508 1.986 4.782 1.277 1.282 2.976 1.988 4.784 1.988 3.722 0 6.75-3.028 6.75-6.75 0-1.245-.349-2.468-1.007-3.536z"/>
|
|
6
|
+
<path fill="#C5C5C5" d="M12.6 6.134l-.094.071c-.269.333-.746 1.096-.91 2.375.057.277.092.495.092.545 0 2.206-1.794 4-4 4-1.098 0-2.093-.445-2.817-1.164-.718-.724-1.163-1.718-1.163-2.815 0-2.206 1.794-4 4-4l.351.025v1.85s1.626-1.342 1.631-1.339l1.869-1.577-3.5-2.917v2.218l-.371-.03c-3.176 0-5.75 2.574-5.75 5.75 0 1.593.648 3.034 1.695 4.076 1.042 1.046 2.482 1.694 4.076 1.694 3.176 0 5.75-2.574 5.75-5.75-.001-1.106-.318-2.135-.859-3.012z"/>
|
|
7
|
+
</svg>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2019 TypeFox and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><defs><style>.icon-canvas-transparent,.icon-vs-out{fill:#252526;}.icon-canvas-transparent{opacity:0;}.icon-vs-bg{fill:#c5c5c5;}</style></defs><title>add</title><g id="canvas"><path class="icon-canvas-transparent" d="M16,16H0V0H16Z"/></g><g id="outline" style="display: none;"><path class="icon-vs-out" d="M14,6v4H10v4H6V10H2V6H6V2h4V6Z"/></g><g id="iconBg"><path class="icon-vs-bg" d="M13,7V9H9v4H7V9H3V7H7V3H9V7Z"/></g></svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2019 TypeFox and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><defs><style>.icon-canvas-transparent,.icon-vs-out{fill:#252526;}.icon-canvas-transparent{opacity:0;}.icon-vs-bg{fill:#c5c5c5;}</style></defs><title>add</title><g id="canvas"><path class="icon-canvas-transparent" d="M16,16H0V0H16Z"/></g><g id="outline" style="display: none;"><path class="icon-vs-out" d="M14,6v4H10v4H6V10H2V6H6V2h4V6Z"/></g><g id="iconBg"><path class="icon-vs-bg" d="M13,7V9H9v4H7V9H3V7H7V3H9V7Z"/></g></svg>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2019 TypeFox and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><defs><style>.icon-canvas-transparent,.icon-vs-out{fill:#f6f6f6;}.icon-canvas-transparent{opacity:0;}.icon-vs-bg{fill:#424242;}</style></defs><title>add</title><g id="canvas"><path class="icon-canvas-transparent" d="M16,16H0V0H16Z"/></g><g id="outline" style="display: none;"><path class="icon-vs-out" d="M14,6v4H10v4H6V10H2V6H6V2h4V6Z"/></g><g id="iconBg"><path class="icon-vs-bg" d="M13,7V9H9v4H7V9H3V7H7V3H9V7Z"/></g></svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2019 TypeFox and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><defs><style>.icon-canvas-transparent,.icon-vs-out{fill:#f6f6f6;}.icon-canvas-transparent{opacity:0;}.icon-vs-bg{fill:#424242;}</style></defs><title>add</title><g id="canvas"><path class="icon-canvas-transparent" d="M16,16H0V0H16Z"/></g><g id="outline" style="display: none;"><path class="icon-vs-out" d="M14,6v4H10v4H6V10H2V6H6V2h4V6Z"/></g><g id="iconBg"><path class="icon-vs-bg" d="M13,7V9H9v4H7V9H3V7H7V3H9V7Z"/></g></svg>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2020 RedHat and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
-
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.14642 9.76777L8.14641 14.7678L8.85352 14.7678L13.8535 9.76777L13.1464 9.06066L8.99997 13.2071L8.99997 1L7.99997 0.999999L7.99997 13.2071L3.85353 9.06066L3.14642 9.76777Z" fill="#424242"/>
|
|
6
|
-
</svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2020 RedHat and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.14642 9.76777L8.14641 14.7678L8.85352 14.7678L13.8535 9.76777L13.1464 9.06066L8.99997 13.2071L8.99997 1L7.99997 0.999999L7.99997 13.2071L3.85353 9.06066L3.14642 9.76777Z" fill="#424242"/>
|
|
6
|
+
</svg>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2020 RedHat and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
-
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.14646 9.76777L8.14644 14.7678L8.85355 14.7678L13.8535 9.76777L13.1464 9.06066L9 13.2071L9 1L8 0.999999L8 13.2071L3.85356 9.06066L3.14646 9.76777Z" fill="#C5C5C5"/>
|
|
6
|
-
</svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2020 RedHat and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.14646 9.76777L8.14644 14.7678L8.85355 14.7678L13.8535 9.76777L13.1464 9.06066L9 13.2071L9 1L8 0.999999L8 13.2071L3.85356 9.06066L3.14646 9.76777Z" fill="#C5C5C5"/>
|
|
6
|
+
</svg>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2020 RedHat and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
-
<path fill-rule="evenodd" clip-rule="evenodd" d="M13.8536 6.2929L8.85359 1.29291H8.14648L3.14648 6.2929L3.85359 7.00001L8.00003 2.85357V15.0607H9.00003V2.85357L13.1465 7.00001L13.8536 6.2929Z" fill="#424242"/>
|
|
6
|
-
</svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2020 RedHat and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M13.8536 6.2929L8.85359 1.29291H8.14648L3.14648 6.2929L3.85359 7.00001L8.00003 2.85357V15.0607H9.00003V2.85357L13.1465 7.00001L13.8536 6.2929Z" fill="#424242"/>
|
|
6
|
+
</svg>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2020 RedHat and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
-
<path fill-rule="evenodd" clip-rule="evenodd" d="M13.8535 6.2929L8.85356 1.29291H8.14645L3.14645 6.2929L3.85356 7.00001L8 2.85357V15.0607H9V2.85357L13.1464 7.00001L13.8535 6.2929Z" fill="#C5C5C5"/>
|
|
6
|
-
</svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2020 RedHat and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
5
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M13.8535 6.2929L8.85356 1.29291H8.14645L3.14645 6.2929L3.85356 7.00001L8 2.85357V15.0607H9V2.85357L13.1464 7.00001L13.8535 6.2929Z" fill="#C5C5C5"/>
|
|
6
|
+
</svg>
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
-
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
-
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
|
|
5
|
-
<style type="text/css">
|
|
6
|
-
.st0{opacity:0;fill:#262626;} .st1{fill:#262626;} .st2{fill:#C5C5C5;}
|
|
7
|
-
</style>
|
|
8
|
-
<g id="outline">
|
|
9
|
-
<rect width="16" height="16" class="st0"/>
|
|
10
|
-
<path d="M14.176 5.592c-.555-.6-1.336-.904-2.322-.904-.258 0-.521.024-.784.072-.246.044-.479.101-.7.169-.228.07-.432.147-.613.229-.22.099-.389.196-.512.284l-.419.299v2.701c-.086.108-.162.223-.229.344l-2.45-6.354h-2.394l-3.753 9.804v.598h3.025l.838-2.35h2.167l.891 2.35h3.237l-.001-.003c.305.092.633.15.993.15.344 0 .671-.049.978-.146h2.853v-4.903c-.001-.975-.271-1.763-.805-2.34z" class="st1"/>
|
|
11
|
-
</g>
|
|
12
|
-
<g id="icon_x5F_bg">
|
|
13
|
-
<path d="M7.611 11.834l-.891-2.35h-3.562l-.838 2.35h-1.095l3.217-8.402h1.02l3.24 8.402h-1.091zm-2.531-6.814l-.044-.135-.038-.156-.029-.152-.024-.126h-.023l-.021.126-.032.152-.038.156-.044.135-1.307 3.574h2.918l-1.318-3.574z" class="st2"/>
|
|
14
|
-
<path d="M13.02 11.834v-.938h-.023c-.199.352-.456.62-.771.806s-.673.278-1.075.278c-.313 0-.588-.045-.826-.135s-.438-.212-.598-.366-.281-.338-.363-.551-.124-.442-.124-.688c0-.262.039-.502.117-.721s.198-.412.36-.58.367-.308.615-.419.544-.19.888-.237l1.811-.252c0-.273-.029-.507-.088-.7s-.143-.351-.252-.472-.241-.21-.396-.267-.325-.085-.513-.085c-.363 0-.714.064-1.052.193s-.638.31-.904.54v-.984c.082-.059.196-.121.343-.188s.312-.128.495-.185.378-.104.583-.141.407-.056.606-.056c.699 0 1.229.194 1.588.583s.539.942.539 1.661v3.902h-.96zm-1.454-2.83c-.273.035-.498.085-.674.149s-.313.144-.41.237-.165.205-.202.334-.055.276-.055.44c0 .141.025.271.076.393s.124.227.22.316.215.16.357.211.308.076.495.076c.242 0 .465-.045.668-.135s.378-.214.524-.372.261-.344.343-.557.123-.442.123-.688v-.609l-1.465.205z" class="st2"/>
|
|
15
|
-
</g>
|
|
16
|
-
</svg>
|
|
1
|
+
<!--Copyright (c) Microsoft Corporation. All rights reserved.-->
|
|
2
|
+
<!--Copyright (C) 2018 TypeFox and others.-->
|
|
3
|
+
<!--Licensed under the MIT License. See License.txt in the project root for license information.-->
|
|
4
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
|
|
5
|
+
<style type="text/css">
|
|
6
|
+
.st0{opacity:0;fill:#262626;} .st1{fill:#262626;} .st2{fill:#C5C5C5;}
|
|
7
|
+
</style>
|
|
8
|
+
<g id="outline">
|
|
9
|
+
<rect width="16" height="16" class="st0"/>
|
|
10
|
+
<path d="M14.176 5.592c-.555-.6-1.336-.904-2.322-.904-.258 0-.521.024-.784.072-.246.044-.479.101-.7.169-.228.07-.432.147-.613.229-.22.099-.389.196-.512.284l-.419.299v2.701c-.086.108-.162.223-.229.344l-2.45-6.354h-2.394l-3.753 9.804v.598h3.025l.838-2.35h2.167l.891 2.35h3.237l-.001-.003c.305.092.633.15.993.15.344 0 .671-.049.978-.146h2.853v-4.903c-.001-.975-.271-1.763-.805-2.34z" class="st1"/>
|
|
11
|
+
</g>
|
|
12
|
+
<g id="icon_x5F_bg">
|
|
13
|
+
<path d="M7.611 11.834l-.891-2.35h-3.562l-.838 2.35h-1.095l3.217-8.402h1.02l3.24 8.402h-1.091zm-2.531-6.814l-.044-.135-.038-.156-.029-.152-.024-.126h-.023l-.021.126-.032.152-.038.156-.044.135-1.307 3.574h2.918l-1.318-3.574z" class="st2"/>
|
|
14
|
+
<path d="M13.02 11.834v-.938h-.023c-.199.352-.456.62-.771.806s-.673.278-1.075.278c-.313 0-.588-.045-.826-.135s-.438-.212-.598-.366-.281-.338-.363-.551-.124-.442-.124-.688c0-.262.039-.502.117-.721s.198-.412.36-.58.367-.308.615-.419.544-.19.888-.237l1.811-.252c0-.273-.029-.507-.088-.7s-.143-.351-.252-.472-.241-.21-.396-.267-.325-.085-.513-.085c-.363 0-.714.064-1.052.193s-.638.31-.904.54v-.984c.082-.059.196-.121.343-.188s.312-.128.495-.185.378-.104.583-.141.407-.056.606-.056c.699 0 1.229.194 1.588.583s.539.942.539 1.661v3.902h-.96zm-1.454-2.83c-.273.035-.498.085-.674.149s-.313.144-.41.237-.165.205-.202.334-.055.276-.055.44c0 .141.025.271.076.393s.124.227.22.316.215.16.357.211.308.076.495.076c.242 0 .465-.045.668-.135s.378-.214.524-.372.261-.344.343-.557.123-.442.123-.688v-.609l-1.465.205z" class="st2"/>
|
|
15
|
+
</g>
|
|
16
|
+
</svg>
|