Ensure that each editor theme is only created once (#17095)

GitOrigin-RevId: 3551e02fab44fae7fcab5cb12886d45969e3990f
This commit is contained in:
Alf Eaton
2024-02-16 09:05:03 +00:00
committed by Copybot
parent aa17e1e7e1
commit 3f29aa2195
15 changed files with 679 additions and 647 deletions
@@ -12,24 +12,22 @@ import { updateHasReviewPanelToggledEffect } from './changes/change-manager'
* of the coords to cover the full line height.
*/
export const drawSelection = () => {
return [cursorLayer, selectionLayer, hideNativeSelection]
return [cursorLayer, selectionLayer, Prec.highest(hideNativeSelection)]
}
const canHidePrimary = !browser.ios
const hideNativeSelection = Prec.highest(
EditorView.theme({
'.cm-line': {
'caret-color': canHidePrimary ? 'transparent !important' : null,
'& ::selection': {
backgroundColor: 'transparent !important',
},
'&::selection': {
backgroundColor: 'transparent !important',
},
const hideNativeSelection = EditorView.theme({
'.cm-line': {
'caret-color': canHidePrimary ? 'transparent !important' : null,
'& ::selection': {
backgroundColor: 'transparent !important',
},
})
)
'&::selection': {
backgroundColor: 'transparent !important',
},
},
})
const cursorLayer = layer({
above: true,