Merge branch 'hotkeys' into develop

This commit is contained in:
Sakamoto Shiina
2025-01-20 12:32:08 +09:00
4 changed files with 28 additions and 1 deletions

View File

@@ -7,6 +7,7 @@ import {
import { import {
KeyEventController, KeyEventController,
StartPythonController, StartPythonController,
GlobalHotKeyController,
UiLanguageController, UiLanguageController,
ConfigPageCloseTriggerController, ConfigPageCloseTriggerController,
UiSizeController, UiSizeController,
@@ -33,6 +34,7 @@ export const App = () => {
<div className={styles.container}> <div className={styles.container}>
<KeyEventController /> <KeyEventController />
<StartPythonController /> <StartPythonController />
<GlobalHotKeyController />
<UiLanguageController /> <UiLanguageController />
<ConfigPageCloseTriggerController /> <ConfigPageCloseTriggerController />
<UiSizeController /> <UiSizeController />

View File

@@ -0,0 +1,22 @@
import { useEffect } from "react";
import { useHotkeys } from "@logics_configs";
import { useIsBackendReady, useIsSoftwareUpdating } from "@logics_common";
export const GlobalHotKeyController = () => {
const { currentIsBackendReady } = useIsBackendReady();
const { currentIsSoftwareUpdating } = useIsSoftwareUpdating();
const { registerShortcuts, unregisterAll } = useHotkeys();
useEffect(() => {
const is_backend_ready = currentIsBackendReady.data;
const is_software_updating = currentIsSoftwareUpdating.data;
if (is_backend_ready && !is_software_updating) {
registerShortcuts();
} else if (is_software_updating) {
unregisterAll();
}
}, [currentIsBackendReady.data, currentIsSoftwareUpdating.data]);
return null;
};

View File

@@ -4,7 +4,9 @@ export const KeyEventController = () => {
useEffect(() => { useEffect(() => {
const handleKeydown = (event) => { const handleKeydown = (event) => {
if ( if (
event.key === "F5" || event.key === "F5" || // Page reload
event.key === "F10" || // Focus thw window menu (maybe)
event.key === "F12" || // Open dev tool
(event.ctrlKey && event.key === "r") || (event.ctrlKey && event.key === "r") ||
(event.metaKey && event.key === "r") (event.metaKey && event.key === "r")
) { ) {

View File

@@ -1,5 +1,6 @@
export { KeyEventController } from "./KeyEventController"; export { KeyEventController } from "./KeyEventController";
export { StartPythonController } from "./StartPythonController"; export { StartPythonController } from "./StartPythonController";
export { GlobalHotKeyController } from "./GlobalHotKeyController";
export { UiLanguageController } from "./UiLanguageController"; export { UiLanguageController } from "./UiLanguageController";
export { ConfigPageCloseTriggerController } from "./ConfigPageCloseTriggerController"; export { ConfigPageCloseTriggerController } from "./ConfigPageCloseTriggerController";
export { UiSizeController } from "./UiSizeController"; export { UiSizeController } from "./UiSizeController";