diff --git a/ui/frontend/editor/MonacoEditorCore.tsx b/ui/frontend/editor/MonacoEditorCore.tsx index 9755cd96..82f0bb90 100644 --- a/ui/frontend/editor/MonacoEditorCore.tsx +++ b/ui/frontend/editor/MonacoEditorCore.tsx @@ -8,6 +8,14 @@ import { themeVsDarkPlus } from './rust_monaco_def'; import * as styles from './Editor.module.css'; +async function remeasureFontWhenReady(fonts: FontFaceSet, font: string) { + while (!fonts.check(font)) { + await fonts.ready; + } + + monaco.editor.remeasureFonts(); +} + function useEditorProp( editor: monaco.editor.IStandaloneCodeEditor | null, prop: T, @@ -68,6 +76,8 @@ const MonacoEditorCore: React.FC = (props) => { }); setEditor(editor); + remeasureFontWhenReady(document.fonts, nodeStyle.font); + editor.focus(); }, []);