mirror of
https://github.com/wavetermdev/backup.git
synced 2026-08-05 13:57:07 -07:00
add user setting for sticky scroll
This commit is contained in:
@@ -82,10 +82,16 @@ const minimapEnabledAtom = atom((get) => {
|
||||
return settings["editor:minimapenabled"] ?? false;
|
||||
});
|
||||
|
||||
const stickyScrollEnabledAtom = atom((get) => {
|
||||
const settings = get(atoms.settingsAtom);
|
||||
return settings["editor:stickyscrollenabled"] ?? false;
|
||||
});
|
||||
|
||||
export function CodeEditor({ text, language, filename, onChange, onMount }: CodeEditorProps) {
|
||||
const divRef = useRef<HTMLDivElement>(null);
|
||||
const unmountRef = useRef<() => void>(null);
|
||||
const minimapEnabled = useAtomValue(minimapEnabledAtom);
|
||||
const stickyScrollEnabled = useAtomValue(stickyScrollEnabledAtom);
|
||||
const theme = "wave-theme-dark";
|
||||
|
||||
React.useEffect(() => {
|
||||
@@ -112,8 +118,9 @@ export function CodeEditor({ text, language, filename, onChange, onMount }: Code
|
||||
const editorOpts = useMemo(() => {
|
||||
const opts = defaultEditorOptions();
|
||||
opts.minimap.enabled = minimapEnabled;
|
||||
opts.stickyScroll.enabled = stickyScrollEnabled;
|
||||
return opts;
|
||||
}, [minimapEnabled]);
|
||||
}, [minimapEnabled, stickyScrollEnabled]);
|
||||
|
||||
return (
|
||||
<div className="code-editor-wrapper">
|
||||
|
||||
Vendored
+1
@@ -396,6 +396,7 @@ declare global {
|
||||
"term:fontfamily"?: string;
|
||||
"term:disablewebgl"?: boolean;
|
||||
"editor:minimapenabled"?: boolean;
|
||||
"editor:stickyscrollenabled"?: boolean;
|
||||
"web:*"?: boolean;
|
||||
"web:openlinksinternally"?: boolean;
|
||||
"blockheader:*"?: boolean;
|
||||
|
||||
Reference in New Issue
Block a user