feat: support Korean IME mode for keyboard shortcuts via e.code (KeyF, KeyS, ㄹ, ㄴ)

main
I Luk Kim 3 weeks ago
parent e1bc485298
commit 0774c130de

@ -157,26 +157,18 @@ export function MangaViewer({
useEffect(() => { useEffect(() => {
const handler = (e: KeyboardEvent) => { const handler = (e: KeyboardEvent) => {
if (e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement) return; if (e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement) return;
switch (e.key) { if (e.code === 'ArrowRight') {
case 'ArrowRight':
e.preventDefault(); e.preventDefault();
goNext(); goNext();
break; } else if (e.code === 'ArrowLeft') {
case 'ArrowLeft':
e.preventDefault(); e.preventDefault();
goPrev(); goPrev();
break; } else if (e.code === 'KeyF' || e.key === 'f' || e.key === 'F' || e.key === 'ㄹ') {
case 'f':
case 'F':
toggleFullscreen(); toggleFullscreen();
break; } else if (e.code === 'KeyS' || e.key === 's' || e.key === 'S' || e.key === 'ㄴ') {
case 's':
case 'S':
setShowSettings((v) => !v); setShowSettings((v) => !v);
break; } else if (e.key === 'Escape') {
case 'Escape':
if (showSettings) setShowSettings(false); if (showSettings) setShowSettings(false);
break;
} }
}; };
window.addEventListener('keydown', handler); window.addEventListener('keydown', handler);

Loading…
Cancel
Save