11import * as monaco from 'monaco-editor'
22import './languages'
33import './theme'
4- import MultiEditorStandaloneCodeEditorServiceImpl , { EditorOpenHandler } from './services/MultiEditorStandaloneCodeEditorService '
5- import TextModelService from './services/TextModelService '
4+ import getModelEditorServiceOverride from 'vscode/service-override/modelEditor '
5+ import getMessageServiceOverride from 'vscode/service-override/messages '
66import './worker'
77import setupExtensions from './extensions'
8-
98import 'monaco-editor/esm/vs/editor/editor.all'
109import 'monaco-editor/esm/vs/editor/standalone/browser/accessibilityHelp/accessibilityHelp'
1110import 'monaco-editor/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard'
@@ -15,18 +14,15 @@ import 'monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGot
1514import 'monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess'
1615import 'monaco-editor/esm/vs/editor/standalone/browser/quickAccess/standaloneCommandsQuickAccess'
1716import 'monaco-editor/esm/vs/editor/standalone/browser/referenceSearch/standaloneReferenceSearch'
17+ import EditorOpenHandlerRegistry , { EditorOpenHandler } from './tools/EditorOpenHandlerRegistry'
18+
19+ const editorOpenHandlerRegistry = new EditorOpenHandlerRegistry ( )
1820
1921monaco . extra . StandaloneServices . initialize ( {
20- get textModelService ( ) {
21- return new TextModelService ( monaco . extra . StandaloneServices . get ( monaco . extra . IModelService ) )
22- } ,
23- get codeEditorService ( ) {
24- return new MultiEditorStandaloneCodeEditorServiceImpl (
25- monaco . extra . StandaloneServices . get ( monaco . extra . IContextKeyService ) ,
26- monaco . extra . StandaloneServices . get ( monaco . editor . IStandaloneThemeService ) ,
27- monaco . extra . StandaloneServices . get ( monaco . extra . ITextModelService )
28- )
29- }
22+ ...getModelEditorServiceOverride ( ( model , input , sideBySide ) => {
23+ return editorOpenHandlerRegistry . openCodeEditor ( model , input , sideBySide )
24+ } ) ,
25+ ...getMessageServiceOverride ( document . body )
3026} )
3127// Disable high contrast autodetection because it fallbacks on the hc-black no matter what
3228monaco . extra . StandaloneServices . get ( monaco . editor . IStandaloneThemeService ) . setAutoDetectHighContrast ( false )
@@ -57,8 +53,7 @@ function registerTextModelContentProvider (scheme: string, provider: monaco.extr
5753}
5854
5955function registerEditorOpenHandler ( handler : EditorOpenHandler ) : monaco . IDisposable {
60- const codeEditorService = monaco . extra . StandaloneServices . get ( monaco . extra . ICodeEditorService )
61- return ( codeEditorService as MultiEditorStandaloneCodeEditorServiceImpl ) . registerEditorOpenHandler ( handler )
56+ return editorOpenHandlerRegistry . registerEditorOpenHandler ( handler )
6257}
6358
6459export {
0 commit comments