Merge branch 'hotkeys' into develop
This commit is contained in:
@@ -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 />
|
||||||
|
|||||||
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;
|
||||||
|
};
|
||||||
@@ -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")
|
||||||
) {
|
) {
|
||||||
|
|||||||
@@ -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";
|
||||||
|
|||||||
Reference in New Issue
Block a user