[bugfix] to register hotkeys when start up the software.(to unregisterAll when the software is updating)
This commit is contained in:
@@ -7,6 +7,7 @@ import {
|
||||
import {
|
||||
KeyEventController,
|
||||
StartPythonController,
|
||||
GlobalHotKeyController,
|
||||
UiLanguageController,
|
||||
ConfigPageCloseTriggerController,
|
||||
UiSizeController,
|
||||
@@ -33,6 +34,7 @@ export const App = () => {
|
||||
<div className={styles.container}>
|
||||
<KeyEventController />
|
||||
<StartPythonController />
|
||||
<GlobalHotKeyController />
|
||||
<UiLanguageController />
|
||||
<ConfigPageCloseTriggerController />
|
||||
<UiSizeController />
|
||||
|
||||
22
src-ui/app/_app_controllers/GlobalHotKeyController.jsx
Normal file
22
src-ui/app/_app_controllers/GlobalHotKeyController.jsx
Normal 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;
|
||||
};
|
||||
@@ -1,5 +1,6 @@
|
||||
export { KeyEventController } from "./KeyEventController";
|
||||
export { StartPythonController } from "./StartPythonController";
|
||||
export { GlobalHotKeyController } from "./GlobalHotKeyController";
|
||||
export { UiLanguageController } from "./UiLanguageController";
|
||||
export { ConfigPageCloseTriggerController } from "./ConfigPageCloseTriggerController";
|
||||
export { UiSizeController } from "./UiSizeController";
|
||||
|
||||
Reference in New Issue
Block a user