Skip to content

Commit b64690e

Browse files
author
Incharajayaram
committed
Fix: Address Copilot review comments for autosave and language change logic
1 parent eaf0436 commit b64690e

1 file changed

Lines changed: 16 additions & 6 deletions

File tree

src/pages/EditorComponent.js

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -133,19 +133,29 @@ function EditorComponent() {
133133
DEFAULT_LANGUAGE: selectedLanguage.DEFAULT_LANGUAGE,
134134
NAME: selectedLanguage.NAME,
135135
});
136-
const savedCode = localStorage.getItem(`code-${currentLanguage}`);
137-
if (savedCode) {
136+
const savedCode = localStorage.getItem(`code-${selectedLanguage.DEFAULT_LANGUAGE}`);
137+
if (savedCode !== null) {
138138
setCode(savedCode);
139139
} else {
140140
setCode(selectedLanguage.HELLO_WORLD);
141141
}
142142
}, [currentLanguage]);
143143

144144
useEffect(() => {
145-
if (code) {
146-
localStorage.setItem(`code-${currentLanguage}`, code);
147-
}
148-
}, [code, currentLanguage]);
145+
if (isImportingRef.current) return;
146+
147+
const handler = setTimeout(() => {
148+
if (code) {
149+
localStorage.setItem(`code-${currentLanguage}`, code);
150+
} else {
151+
localStorage.removeItem(`code-${currentLanguage}`);
152+
}
153+
}, 500); // 500ms debounce
154+
155+
return () => {
156+
clearTimeout(handler);
157+
};
158+
}, [code]);
149159

150160
const handleEditorThemeChange = async (_, theme) => {
151161
if (["light", "vs-dark"].includes(theme.ID)) {

0 commit comments

Comments
 (0)