From fb28d0c430b8d1ee3e11c3ede941b9c77d2f6e5b Mon Sep 17 00:00:00 2001 From: Melvin Zottola Date: Tue, 24 Feb 2026 11:12:08 +0100 Subject: [PATCH] fix(qov-1607) Fix monaco editors font-size issue Before this change: the font-size was set using css, i.e `font-size: 0.65rem`. It led to wrong highlight / selectable text on Chrome as it bypasses internal Monaco properties. The fix: * removes the font-size from scss sources * defines fontSize in Monaco editor property * defines lineHeight to fit with current line height property --- .../components/code-diff-editor/code-diff-editor.scss | 1 - .../lib/components/code-diff-editor/code-diff-editor.tsx | 2 ++ .../ui/src/lib/components/code-editor/code-editor.scss | 5 ----- .../ui/src/lib/components/code-editor/code-editor.tsx | 9 ++++++++- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/libs/shared/ui/src/lib/components/code-diff-editor/code-diff-editor.scss b/libs/shared/ui/src/lib/components/code-diff-editor/code-diff-editor.scss index dcfdc04e2f0..623af758ef0 100644 --- a/libs/shared/ui/src/lib/components/code-diff-editor/code-diff-editor.scss +++ b/libs/shared/ui/src/lib/components/code-diff-editor/code-diff-editor.scss @@ -31,7 +31,6 @@ .view-line, .line-numbers { font-family: monospace !important; - font-size: 0.65rem; } // JSON values in the diff diff --git a/libs/shared/ui/src/lib/components/code-diff-editor/code-diff-editor.tsx b/libs/shared/ui/src/lib/components/code-diff-editor/code-diff-editor.tsx index d10f95c44fa..9fbf7e54fc5 100644 --- a/libs/shared/ui/src/lib/components/code-diff-editor/code-diff-editor.tsx +++ b/libs/shared/ui/src/lib/components/code-diff-editor/code-diff-editor.tsx @@ -105,6 +105,8 @@ export function CodeDiffEditor({ readOnly: true, originalEditable: false, minimap: { enabled: false }, + fontSize: 10.4, + lineHeight: 19, lineNumbers: 'on', scrollBeyondLastLine: false, automaticLayout: true, diff --git a/libs/shared/ui/src/lib/components/code-editor/code-editor.scss b/libs/shared/ui/src/lib/components/code-editor/code-editor.scss index d0c5fac05e9..4a77e16dd02 100644 --- a/libs/shared/ui/src/lib/components/code-editor/code-editor.scss +++ b/libs/shared/ui/src/lib/components/code-editor/code-editor.scss @@ -18,7 +18,6 @@ .view-line, .line-numbers { font-family: monospace !important; - font-size: 0.65rem; } // JSON Values @@ -55,7 +54,6 @@ .view-line { background-color: #e6f6eb7f; font-family: monospace !important; - font-size: 0.65rem; } .margin-view-overlays { @@ -66,7 +64,6 @@ .line-numbers { color: #218358 !important; font-family: monospace !important; - font-size: 0.65rem; } } @@ -75,7 +72,6 @@ .view-line { background-color: rgba(246, 231, 230, 0.5); font-family: monospace !important; - font-size: 0.65rem; } .margin-view-overlays { @@ -86,6 +82,5 @@ .line-numbers { color: #e89381 !important; font-family: monospace !important; - font-size: 0.65rem; } } diff --git a/libs/shared/ui/src/lib/components/code-editor/code-editor.tsx b/libs/shared/ui/src/lib/components/code-editor/code-editor.tsx index fed904164e9..bf90bc8956a 100644 --- a/libs/shared/ui/src/lib/components/code-editor/code-editor.tsx +++ b/libs/shared/ui/src/lib/components/code-editor/code-editor.tsx @@ -1,4 +1,9 @@ -import { Editor as CodeEditorMonaco, type EditorProps as CodeEditorMonacoProps } from '@monaco-editor/react' +import { + Editor as CodeEditorMonaco, + type EditorProps as CodeEditorMonacoProps, + type Monaco, +} from '@monaco-editor/react' +import type { editor } from 'monaco-editor' import LoaderSpinner from '../loader-spinner/loader-spinner' import './code-editor.scss' @@ -13,6 +18,8 @@ export function CodeEditor({ readOnly, options, ...props }: CodeEditorProps) { loading={} options={{ minimap: { enabled: false }, + fontSize: 10.4, + lineHeight: 19, readOnly, ...options, }}