Skip to content

Commit 52c94ba

Browse files
authored
Merge pull request #200 from CodinGame/fix-and-improvements
Fixes and improvements
2 parents 2057f2b + b802fad commit 52c94ba

File tree

13 files changed

+151
-33
lines changed

13 files changed

+151
-33
lines changed

demo/package-lock.json

Lines changed: 39 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

demo/package.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030
],
3131
"dependencies": {
3232
"@codingame/monaco-vscode-accessibility-service-override": "file:../dist/service-override-accessibility",
33-
"@codingame/monaco-vscode-workspace-trust-service-override": "file:../dist/service-override-workspace-trust",
3433
"@codingame/monaco-vscode-audio-cue-service-override": "file:../dist/service-override-audio-cue",
3534
"@codingame/monaco-vscode-bat-default-extension": "file:../dist/default-extension-bat",
3635
"@codingame/monaco-vscode-bulk-edit-service-override": "file:../dist/service-override-bulk-edit",
@@ -142,10 +141,14 @@
142141
"@codingame/monaco-vscode-typescript-basics-default-extension": "file:../dist/default-extension-typescript-basics",
143142
"@codingame/monaco-vscode-typescript-language-features-default-extension": "file:../dist/default-extension-typescript-language-features",
144143
"@codingame/monaco-vscode-vb-default-extension": "file:../dist/default-extension-vb",
144+
"@codingame/monaco-vscode-view-banner-service-override": "file:../dist/service-override-view-banner",
145+
"@codingame/monaco-vscode-view-status-bar-service-override": "file:../dist/service-override-view-status-bar",
146+
"@codingame/monaco-vscode-view-title-bar-service-override": "file:../dist/service-override-view-title-bar",
145147
"@codingame/monaco-vscode-views-service-override": "file:../dist/service-override-views",
146148
"@codingame/monaco-vscode-vscode-api-tests-default-extension": "file:../dist/default-extension-vscode-api-tests",
147149
"@codingame/monaco-vscode-vscode-colorize-tests-default-extension": "file:../dist/default-extension-vscode-colorize-tests",
148150
"@codingame/monaco-vscode-vscode-test-resolver-default-extension": "file:../dist/default-extension-vscode-test-resolver",
151+
"@codingame/monaco-vscode-workspace-trust-service-override": "file:../dist/service-override-workspace-trust",
149152
"@codingame/monaco-vscode-xml-default-extension": "file:../dist/default-extension-xml",
150153
"@codingame/monaco-vscode-yaml-default-extension": "file:../dist/default-extension-yaml",
151154
"ansi-colors": "^4.1.3",

demo/src/setup.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ import getViewsServiceOverride, {
1616
isPartVisibile,
1717
attachPart
1818
} from '@codingame/monaco-vscode-views-service-override'
19+
import getBannerServiceOverride from '@codingame/monaco-vscode-view-banner-service-override'
20+
import getStatusBarServiceOverride from '@codingame/monaco-vscode-view-status-bar-service-override'
21+
import getTitleBarServiceOverride from '@codingame/monaco-vscode-view-title-bar-service-override'
1922
import getDebugServiceOverride from '@codingame/monaco-vscode-debug-service-override'
2023
import getPreferencesServiceOverride from '@codingame/monaco-vscode-preferences-service-override'
2124
import getSnippetServiceOverride from '@codingame/monaco-vscode-snippets-service-override'
@@ -82,6 +85,9 @@ await initializeMonacoService({
8285
...getDebugServiceOverride(),
8386
...getPreferencesServiceOverride(),
8487
...getViewsServiceOverride(openNewCodeEditor),
88+
...getBannerServiceOverride(),
89+
...getStatusBarServiceOverride(),
90+
...getTitleBarServiceOverride(),
8591
...getSnippetServiceOverride(),
8692
...getQuickAccessServiceOverride({
8793
isKeybindingConfigurationVisible: isEditorPartVisible,

demo/vite.config.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ export default defineConfig({
5252
'vscode', 'vscode/extensions', 'vscode/services', 'vscode/monaco', '@codingame/monaco-vscode-model-service-override', '@codingame/monaco-vscode-editor-service-override',
5353
'@codingame/monaco-vscode-extensions-service-override', '@codingame/monaco-vscode-notifications-service-override', '@codingame/monaco-vscode-bulk-edit-service-override', '@codingame/monaco-vscode-dialogs-service-override', '@codingame/monaco-vscode-configuration-service-override',
5454
'@codingame/monaco-vscode-keybindings-service-override', '@codingame/monaco-vscode-textmate-service-override', '@codingame/monaco-vscode-theme-service-override', '@codingame/monaco-vscode-languages-service-override',
55-
'@codingame/monaco-vscode-audio-cue-service-override', '@codingame/monaco-vscode-views-service-override', '@codingame/monaco-vscode-quickaccess-service-override', '@codingame/monaco-vscode-debug-service-override',
55+
'@codingame/monaco-vscode-audio-cue-service-override', '@codingame/monaco-vscode-views-service-override', '@codingame/monaco-vscode-view-banner-service-override', '@codingame/monaco-vscode-view-status-bar-service-override', '@codingame/monaco-vscode-view-title-bar-service-override',
56+
'@codingame/monaco-vscode-quickaccess-service-override', '@codingame/monaco-vscode-debug-service-override',
5657
'@codingame/monaco-vscode-preferences-service-override', '@codingame/monaco-vscode-snippets-service-override', '@codingame/monaco-vscode-files-service-override', '@codingame/monaco-vscode-output-service-override',
5758
'@codingame/monaco-vscode-terminal-service-override', '@codingame/monaco-vscode-search-service-override', '@codingame/monaco-vscode-markers-service-override', '@codingame/monaco-vscode-accessibility-service-override', '@codingame/monaco-vscode-storage-service-override',
5859
'@codingame/monaco-vscode-language-detection-worker-service-override', '@codingame/monaco-vscode-remote-agent-service-override', '@codingame/monaco-vscode-environment-service-override', '@codingame/monaco-vscode-lifecycle-service-override',

package-lock.json

Lines changed: 10 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,14 @@
1515
},
1616
"type": "module",
1717
"scripts": {
18-
"build": "npm run clean && npm run generate-types && npm run lint && npm run compile-rollup-plugins && npm run compile-treemending-script && npm run compile && npm run compile-server && npm run compile-default-extensions",
18+
"build": "npm run clean && npm run generate-types && npm run lint && npm run compile-rollup-plugins && npm run compile-treemending-script && npm run compile && npm run compile-server && npm run compile-default-extensions && npm run copy-monaco-editor",
1919
"compile": "NODE_OPTIONS=--max_old_space_size=8192 rollup --config rollup/rollup.config.ts --configPlugin 'typescript={tsconfig: `tsconfig.rollup-config.json`}' --vscode-version ${npm_package_config_vscode_version} --vscode-ref ${npm_package_config_vscode_ref}",
2020
"compile-default-extensions": "NODE_OPTIONS=--max_old_space_size=8192 rollup --config rollup/rollup.default-extensions.ts --configPlugin 'typescript={tsconfig: `tsconfig.rollup-config-default-extensions.json`}'",
2121
"clean": "rm -rf dist/",
2222
"compile-server": "rollup --config rollup/rollup.server.config.ts --configPlugin 'typescript={tsconfig: `tsconfig.rollup-config-server.json`, include: [`./rollup/rollup.server.config.ts`, `./rollup/rollup-metadata-plugin.ts`]}'",
2323
"compile-treemending-script": "rollup --config rollup/rollup.treemending-script.config.ts --configPlugin 'typescript={tsconfig: `tsconfig.rollup-config-treemending-script.json`, include: [`./rollup/rollup.treemending-script.config.ts`, `./rollup/rollup-metadata-plugin.ts`]}'",
2424
"compile-rollup-plugins": "rollup --config rollup/rollup.rollup-plugins.config.ts --configPlugin 'typescript={tsconfig: `tsconfig.rollup-config-plugins.json`, include: [`./rollup/rollup.rollup-plugins.config.ts`, `./rollup/rollup-metadata-plugin.ts`]}'",
25+
"copy-monaco-editor": "cp -R node_modules/monaco-editor dist/ && (cd dist/monaco-editor; change-package-name \"@codingame/monaco-editor-treemended\")",
2526
"preprepare": "./scripts/install-vscode && node --loader ts-node/esm src/monaco-treemending.ts && patch-package",
2627
"lint": "eslint '{src/**/*.ts,rollup/*.ts,*.ts}'",
2728
"generate-types": "./scripts/generate-types",
@@ -60,6 +61,7 @@
6061
"@typescript-eslint/parser": "^5.62.0",
6162
"@vscode/iconv-lite-umd": "^0.7.0",
6263
"@web/rollup-plugin-import-meta-assets": "^2.1.0",
64+
"change-package-name": "^1.0.5",
6365
"css-url-parser": "^1.1.3",
6466
"diff": "^5.1.0",
6567
"eslint": "^8.49.0",
@@ -85,9 +87,9 @@
8587
"semver": "^7.5.4",
8688
"ts-morph": "^19.0.0",
8789
"ts-node": "^10.9.1",
88-
"xterm-headless": "^5.3.0",
8990
"type-fest": "^4.3.1",
9091
"typescript": "5.2.2",
92+
"xterm-headless": "^5.3.0",
9193
"zx": "^7.2.3"
9294
},
9395
"dependencies": {
@@ -98,14 +100,14 @@
98100
"@vscode/ripgrep": "^1.15.5",
99101
"@vscode/spdlog": "^0.13.11",
100102
"@vscode/vscode-languagedetection": "^1.0.22",
101-
"monaco-editor": "0.43.0",
102-
"vscode-oniguruma": "^2.0.0",
103103
"@vscode/windows-process-tree": "^0.5.0",
104104
"cookie": "^0.5.0",
105105
"kerberos": "^2.0.2",
106106
"keytar": "^7.9.0",
107107
"mime-types": "^2.1.35",
108+
"monaco-editor": "0.43.0",
108109
"node-pty": "^1.0.0",
110+
"vscode-oniguruma": "^2.0.0",
109111
"vscode-regexpp": "^3.1.0",
110112
"vscode-textmate": "^9.0.0",
111113
"xterm": "5.2.1",

src/missing-services.ts

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ import { INotebookKernelService } from 'vs/workbench/contrib/notebook/common/not
146146
import { INotebookRendererMessagingService } from 'vs/workbench/contrib/notebook/common/notebookRendererMessagingService'
147147
import { IInteractiveDocumentService } from 'vs/workbench/contrib/interactive/browser/interactiveDocumentService'
148148
import { IInlineChatService } from 'vs/workbench/contrib/inlineChat/common/inlineChat'
149-
import { IChatWidgetService } from 'vs/workbench/contrib/chat/browser/chat'
149+
import { IChatWidgetService, IQuickChatService } from 'vs/workbench/contrib/chat/browser/chat'
150150
import { IRemoteExplorerService } from 'vs/workbench/services/remote/common/remoteExplorerService'
151151
import { IAuthenticationService } from 'vs/workbench/services/authentication/common/authentication'
152152
import { ITimelineService } from 'vs/workbench/contrib/timeline/common/timeline'
@@ -1147,12 +1147,12 @@ registerSingleton(IStatusbarService, class StatusbarService implements IStatusba
11471147
})
11481148

11491149
isEntryVisible = () => false
1150-
updateEntryVisibility = unsupported
1151-
focus = unsupported
1152-
focusNextEntry = unsupported
1153-
focusPreviousEntry = unsupported
1154-
isEntryFocused = unsupported
1155-
overrideStyle = unsupported
1150+
updateEntryVisibility = () => { /* ignore */ }
1151+
focus = () => { /* ignore */ }
1152+
focusNextEntry = () => { /* ignore */ }
1153+
focusPreviousEntry = () => { /* ignore */ }
1154+
isEntryFocused = () => false
1155+
overrideStyle = () => Disposable.None
11561156
}, InstantiationType.Eager)
11571157

11581158
registerSingleton(IExtensionGalleryService, class ExtensionGalleryService implements IExtensionGalleryService {
@@ -1598,6 +1598,17 @@ registerSingleton(IChatService, class ChatService implements IChatService {
15981598
notifyUserAction = unsupported
15991599
}, InstantiationType.Delayed)
16001600

1601+
registerSingleton(IQuickChatService, class QuickChatService implements IQuickChatService {
1602+
_serviceBrand: undefined
1603+
onDidClose = Event.None
1604+
enabled = false
1605+
toggle = unsupported
1606+
focus = unsupported
1607+
open = unsupported
1608+
close = unsupported
1609+
openInChatView = unsupported
1610+
}, InstantiationType.Delayed)
1611+
16011612
registerSingleton(IEmbedderTerminalService, class EmbedderTerminalService implements IEmbedderTerminalService {
16021613
_serviceBrand: undefined
16031614
onDidCreateTerminal = Event.None

src/service-override/keybindings.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,13 @@ import { IUserDataProfileService } from 'vs/workbench/services/userDataProfile/c
2121
import { IHostService } from 'vs/workbench/services/host/browser/host'
2222
import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions'
2323
import { ILogService } from 'vs/platform/log/common/log'
24+
import { WorkbenchContextKeysHandler } from 'vs/workbench/browser/contextkeys'
2425
import getFileServiceOverride from './files'
2526
import { DynamicKeybindingService } from '../monaco'
2627
import 'vs/workbench/browser/workbench.contribution'
2728
import 'vs/workbench/contrib/keybindings/browser/keybindings.contribution'
29+
import { onRenderWorkbench } from '../lifecycle'
30+
import { IInstantiationService } from '../services'
2831

2932
async function updateUserKeybindings (keybindingsJson: string): Promise<void> {
3033
const userDataProfilesService: IUserDataProfilesService = StandaloneServices.get(IUserDataProfilesService)
@@ -84,6 +87,10 @@ interface KeybindingsProps {
8487
shouldUseGlobalKeybindings?: () => boolean
8588
}
8689

90+
onRenderWorkbench((accessor) => {
91+
accessor.get(IInstantiationService).createInstance(WorkbenchContextKeysHandler)
92+
})
93+
8794
export default function getServiceOverride ({ shouldUseGlobalKeybindings = () => false }: KeybindingsProps = {}): IEditorOverrideServices {
8895
return {
8996
...getFileServiceOverride(),

src/service-override/viewBanner.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import '../missing-services'
2+
import { IEditorOverrideServices } from 'vs/editor/standalone/browser/standaloneServices'
3+
import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors'
4+
import { BannerPart } from 'vs/workbench/browser/parts/banner/bannerPart'
5+
import { IBannerService } from 'vs/workbench/services/banner/browser/bannerService'
6+
7+
export default function getServiceOverride (): IEditorOverrideServices {
8+
return {
9+
[IBannerService.toString()]: new SyncDescriptor(BannerPart, [], false)
10+
}
11+
}
12+
13+
export {
14+
BannerPart
15+
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import '../missing-services'
2+
import { IEditorOverrideServices } from 'vs/editor/standalone/browser/standaloneServices'
3+
import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors'
4+
import { StatusbarPart } from 'vs/workbench/browser/parts/statusbar/statusbarPart'
5+
import { IStatusbarService } from 'vs/workbench/services/statusbar/browser/statusbar'
6+
7+
export default function getServiceOverride (): IEditorOverrideServices {
8+
return {
9+
[IStatusbarService.toString()]: new SyncDescriptor(StatusbarPart, [], false)
10+
}
11+
}
12+
13+
export {
14+
StatusbarPart
15+
}

0 commit comments

Comments
 (0)