diff --git a/src/components/common/SkinViewer.tsx b/src/components/common/SkinViewer.tsx index 4328340..8a73782 100644 --- a/src/components/common/SkinViewer.tsx +++ b/src/components/common/SkinViewer.tsx @@ -523,6 +523,7 @@ const SkinViewer = memo(function SkinViewer({ } else if (e.key === "ArrowUp") { setFocusIndex((prev) => (prev > 0 ? prev - 1 : prev)); } else if (e.key === "Enter") { + e.preventDefault(); if (focusIndex === 0) { ( containerRef.current?.querySelector("input") as HTMLElement diff --git a/src/components/modals/ChooseInstanceModal.tsx b/src/components/modals/ChooseInstanceModal.tsx index 8612989..105130b 100644 --- a/src/components/modals/ChooseInstanceModal.tsx +++ b/src/components/modals/ChooseInstanceModal.tsx @@ -119,6 +119,7 @@ export default function ChooseInstanceModal({ const max = 1 + (validInstances.length > 0 ? 1 : 0) + 1; setFocusIndex((prev) => (prev - 1 + max) % max); } else if (e.key === "Enter") { + e.preventDefault(); if (focusIndex === 0 && validInstances.length > 0) { const currentIdx = validInstances.findIndex( (i: Edition) => i.instanceId === selectedInstance, diff --git a/src/components/modals/CustomTUModal.tsx b/src/components/modals/CustomTUModal.tsx index 206b49f..cd016a8 100644 --- a/src/components/modals/CustomTUModal.tsx +++ b/src/components/modals/CustomTUModal.tsx @@ -86,6 +86,7 @@ export default function CustomTUModal({ playBackSound("close_click.wav"); onClose(); } else if (e.key === "Enter") { + e.preventDefault(); if (focusIndex === 3) { playBackSound("close_click.wav"); onClose(); diff --git a/src/components/modals/CustomizeModal.tsx b/src/components/modals/CustomizeModal.tsx index 9a19055..228602e 100644 --- a/src/components/modals/CustomizeModal.tsx +++ b/src/components/modals/CustomizeModal.tsx @@ -58,6 +58,7 @@ export default function CustomizeModal({ playBackSound("close_click.wav"); onClose(); } else if (e.key === "Enter") { + e.preventDefault(); if (focusIndex === 4) { playBackSound("close_click.wav"); onClose(); diff --git a/src/components/modals/SetUidModal.tsx b/src/components/modals/SetUidModal.tsx index 8bc5f96..a0b95a1 100644 --- a/src/components/modals/SetUidModal.tsx +++ b/src/components/modals/SetUidModal.tsx @@ -103,6 +103,7 @@ export default function SetUidModal({ e.preventDefault(); setFocusIndex((prev) => (prev - 1 + 5) % 5); } else if (e.key === "Enter") { + e.preventDefault(); if (focusIndex === 0) { playPressSound(); setMode("manual"); diff --git a/src/components/views/DevtoolsView.tsx b/src/components/views/DevtoolsView.tsx index 16f618b..64f3887 100644 --- a/src/components/views/DevtoolsView.tsx +++ b/src/components/views/DevtoolsView.tsx @@ -72,6 +72,7 @@ export default function DevtoolsView() { setFocusIndex(0); } } else if (e.key === "Enter") { + e.preventDefault(); if (focusIndex === BACK_BUTTON_INDEX) { playBackSound(); setActiveView("main"); diff --git a/src/components/views/GuidesView.tsx b/src/components/views/GuidesView.tsx index d17b318..c1893f2 100644 --- a/src/components/views/GuidesView.tsx +++ b/src/components/views/GuidesView.tsx @@ -100,6 +100,7 @@ export default function GuidesView() { } else if (e.key === "ArrowUp") { setFocusIndex((p) => (p <= 0 ? BACK_BUTTON_INDEX : p - 1)); } else if (e.key === "Enter") { + e.preventDefault(); if (focusIndex === BACK_BUTTON_INDEX) { goBack(); } else { diff --git a/src/components/views/HomeView.tsx b/src/components/views/HomeView.tsx index 8c9f69b..0406eec 100644 --- a/src/components/views/HomeView.tsx +++ b/src/components/views/HomeView.tsx @@ -135,8 +135,10 @@ const HomeView = memo(function HomeView() { prev === null ? buttonsVal.length - 1 : prev > 0 ? prev - 1 : prev, ); if (e.key === "ArrowLeft") onNavigateToSkin(); - if (e.key === "Enter" && menuFocus !== null) + if (e.key === "Enter" && menuFocus !== null) { + e.preventDefault(); buttonsVal[menuFocus].action(); + } }; window.addEventListener("keydown", handleKey); return () => window.removeEventListener("keydown", handleKey); diff --git a/src/components/views/LceOnlineView.tsx b/src/components/views/LceOnlineView.tsx index 78a1218..69af187 100644 --- a/src/components/views/LceOnlineView.tsx +++ b/src/components/views/LceOnlineView.tsx @@ -348,6 +348,7 @@ const LceOnlineView = memo(function LceOnlineView({ prev === null || prev <= 0 ? itemCount - 1 : prev - 1, ); } else if (e.key === "Enter" && focusIndex !== null) { + e.preventDefault(); menuItems[focusIndex]?.onClick(); } } diff --git a/src/components/views/ScreenshotsView.tsx b/src/components/views/ScreenshotsView.tsx index 5927ca8..4a19869 100644 --- a/src/components/views/ScreenshotsView.tsx +++ b/src/components/views/ScreenshotsView.tsx @@ -73,6 +73,7 @@ const ScreenshotsView = memo(function ScreenshotsView() { playPressSound(); setDeleteConfirmFocusIndex((prev) => (prev === 0 ? 1 : 0)); } else if (e.key === "Enter") { + e.preventDefault(); if (deleteConfirmFocusIndex === 1) confirmDelete(); else { playBackSound(); @@ -94,6 +95,7 @@ const ScreenshotsView = memo(function ScreenshotsView() { playPressSound(); setModalFocusIndex((prev) => (prev < 2 ? prev + 1 : 0)); } else if (e.key === "Enter") { + e.preventDefault(); if (modalFocusIndex === 0) handleOpenFolder(selectedScreenshot); else if (modalFocusIndex === 1) { playPressSound(); @@ -124,6 +126,7 @@ const ScreenshotsView = memo(function ScreenshotsView() { prev <= screenshots.length - 1 - cols ? prev + cols : prev, ); } else if (e.key === "Enter") { + e.preventDefault(); if (screenshots[gridFocusIndex]) { playPressSound(); setModalFocusIndex(2); diff --git a/src/components/views/SettingsView.tsx b/src/components/views/SettingsView.tsx index 3b997db..19fbca9 100644 --- a/src/components/views/SettingsView.tsx +++ b/src/components/views/SettingsView.tsx @@ -775,6 +775,7 @@ const SettingsView = memo(function SettingsView() { item.onChange(newVal); } } else if (e.key === "Enter" && focusIndex !== null) { + e.preventDefault(); const item = settingsItems[focusIndex]; if (item.type === "button") { item.onClick(); diff --git a/src/components/views/SetupView.tsx b/src/components/views/SetupView.tsx index 175b03b..6ee1f2a 100644 --- a/src/components/views/SetupView.tsx +++ b/src/components/views/SetupView.tsx @@ -127,6 +127,7 @@ const SetupView: React.FC = ({ onComplete }) => { e.preventDefault(); setFocusIndex((prev) => (prev - 1 + count) % count); } else if (e.key === "Enter") { + e.preventDefault(); if (currentStep === 0) { if (focusIndex === 0) handleNext(); else if (focusIndex === 1) handleNext(); diff --git a/src/components/views/SkinsView.tsx b/src/components/views/SkinsView.tsx index 21fbd4d..8c0307b 100644 --- a/src/components/views/SkinsView.tsx +++ b/src/components/views/SkinsView.tsx @@ -366,6 +366,7 @@ const SkinsView = memo(function SkinsView() { setFocusIndex(next < SKINS_START_INDEX ? 0 : next); } } else if (e.key === "Enter" && focusIndex !== null) { + e.preventDefault(); if (focusIndex === 0) { if (viewMode === "skin") handleImportClick(); else capeFileInputRef.current?.click(); diff --git a/src/components/views/WorkshopView.tsx b/src/components/views/WorkshopView.tsx index f061678..6513775 100644 --- a/src/components/views/WorkshopView.tsx +++ b/src/components/views/WorkshopView.tsx @@ -688,6 +688,7 @@ const WorkshopView = memo(function WorkshopView({ setFocusedIdx((p) => Math.max((p ?? 1) - (isPluginTab ? 1 : COLS), 0)); playPressSound(); } else if (e.key === "Enter" && focusedIdx !== null) { + e.preventDefault(); const pkg = filteredItems[focusedIdx]; if (pkg) openModal(pkg); } @@ -1402,6 +1403,7 @@ function PackageModal({ return focusOptions[(idx + 1) % focusOptions.length]; }); } else if (e.key === "Enter") { + e.preventDefault(); if (modalFocus === "close") onClose(); else if (modalFocus === "install") handleAction(); else if (modalFocus === "uninstall") setShowUninstall(true); @@ -2171,8 +2173,10 @@ function InstallModal({ e.stopPropagation(); if (status === "installing") return; if (status === "success") { - if (e.key === "Escape" || e.key === "Backspace" || e.key === "Enter") + if (e.key === "Escape" || e.key === "Backspace" || e.key === "Enter") { + e.preventDefault(); onClose(); + } return; } @@ -2187,6 +2191,7 @@ function InstallModal({ playPressSound(); setFocusedIdx((p) => Math.min(p + 1, editionOptions.length - 1)); } else if (e.key === "Enter") { + e.preventDefault(); if (editionOptions.length > 0) { installTo(editionOptions[focusedIdx].instanceId); } @@ -2480,8 +2485,10 @@ function UninstallModal({ e.stopPropagation(); if (status === "removing") return; if (status === "success") { - if (e.key === "Escape" || e.key === "Backspace" || e.key === "Enter") + if (e.key === "Escape" || e.key === "Backspace" || e.key === "Enter") { + e.preventDefault(); onClose(); + } return; } @@ -2496,6 +2503,7 @@ function UninstallModal({ playPressSound(); setFocusedIdx((p) => Math.min(p + 1, installedEntries.length - 1)); } else if (e.key === "Enter") { + e.preventDefault(); if (installedEntries.length > 0) { uninstallFrom(installedEntries[focusedIdx].instanceId); }