refactor: keyInputFlag

This commit is contained in:
AkiChase 2025-03-11 19:07:13 +08:00
parent 098205c613
commit 16ef910d0d
4 changed files with 13 additions and 8 deletions

View File

@ -15,6 +15,7 @@ import ScreenStream from "./ScreenStream.vue";
import { useI18n } from "vue-i18n"; import { useI18n } from "vue-i18n";
import { secondaryClean, secondaryInit } from "../tools/init"; import { secondaryClean, secondaryInit } from "../tools/init";
import { cleanAfterimage } from "../tools/tools"; import { cleanAfterimage } from "../tools/tools";
import { NonReactiveStore } from "../store/noneReactiveStore";
const { t } = useI18n(); const { t } = useI18n();
const store = useGlobalStore(); const store = useGlobalStore();
@ -29,7 +30,8 @@ onBeforeRouteLeave(() => {
if (store.controledDevice) { if (store.controledDevice) {
unlistenToEvent(); unlistenToEvent();
clearShortcuts(); clearShortcuts();
if (store.keyInputFlag) KeyInputHandler.removeEventListener(); if (NonReactiveStore.mem.keyInputFlag)
KeyInputHandler.removeEventListener();
} }
}); });
@ -38,6 +40,7 @@ onActivated(async () => {
if (initFlag) cleanAfterimage(); if (initFlag) cleanAfterimage();
if (store.controledDevice) { if (store.controledDevice) {
console.log("applyShortcuts");
if ( if (
applyShortcuts( applyShortcuts(
store.keyMappingConfigList[store.curKeyMappingIndex], store.keyMappingConfigList[store.curKeyMappingIndex],
@ -152,6 +155,8 @@ function toStartServer() {
user-select: none; user-select: none;
-webkit-user-select: none; -webkit-user-select: none;
z-index: 2; z-index: 2;
width: 100%;
height: 100%;
} }
.button-layer { .button-layer {

View File

@ -33,6 +33,7 @@ import {
} from "./frontcommand/android"; } from "./frontcommand/android";
import { UIEventsCode } from "./frontcommand/UIEventsCode"; import { UIEventsCode } from "./frontcommand/UIEventsCode";
import { sendInjectKeycode, sendSetClipboard } from "./frontcommand/controlMsg"; import { sendInjectKeycode, sendSetClipboard } from "./frontcommand/controlMsg";
import { NonReactiveStore } from "./store/noneReactiveStore";
function clientxToPosx(clientx: number) { function clientxToPosx(clientx: number) {
return clientx < 70 return clientx < 70
@ -1142,7 +1143,7 @@ export class KeyInputHandler {
onClose: () => { onClose: () => {
KeyInputHandler.removeEventListener(); KeyInputHandler.removeEventListener();
listenToEvent(true); listenToEvent(true);
store.keyInputFlag = false; NonReactiveStore.mem.keyInputFlag = false;
}, },
}); });
window.addEventListener("keydown", KeyInputHandler.handler); window.addEventListener("keydown", KeyInputHandler.handler);
@ -1327,16 +1328,16 @@ async function execMacro(
}); });
break; break;
case "key-input-mode": case "key-input-mode":
if (!store.keyInputFlag) { if (!NonReactiveStore.mem.keyInputFlag) {
// on // on
unlistenToEvent(true); unlistenToEvent(true);
KeyInputHandler.addEventListener(); KeyInputHandler.addEventListener();
store.keyInputFlag = true; NonReactiveStore.mem.keyInputFlag = true;
} else { } else {
// off // off
KeyInputHandler.removeEventListener(); KeyInputHandler.removeEventListener();
listenToEvent(true); listenToEvent(true);
store.keyInputFlag = false; NonReactiveStore.mem.keyInputFlag = false;
} }
break; break;
default: default:

View File

@ -69,8 +69,6 @@ export const useGlobalStore = defineStore("global", () => {
const screenSizeW: Ref<number> = ref(0); const screenSizeW: Ref<number> = ref(0);
const screenSizeH: Ref<number> = ref(0); const screenSizeH: Ref<number> = ref(0);
const keyInputFlag = ref(false);
const curMaskSize = ref({ const curMaskSize = ref({
w: 0, w: 0,
h: 0, h: 0,
@ -146,7 +144,6 @@ export const useGlobalStore = defineStore("global", () => {
curMaskPos, curMaskPos,
screenSizeW, screenSizeW,
screenSizeH, screenSizeH,
keyInputFlag, // TODO none reactive
showLoadingFlag, showLoadingFlag,
controledDevice, controledDevice,
editKeyMappingList, editKeyMappingList,

View File

@ -2,6 +2,7 @@ import { LocalStore } from "./localStore";
interface MemType { interface MemType {
screenStreamClientId: string; screenStreamClientId: string;
keyInputFlag: boolean;
} }
interface LocalType { interface LocalType {
@ -17,6 +18,7 @@ interface LocalType {
export class NonReactiveStore { export class NonReactiveStore {
static mem: MemType = { static mem: MemType = {
screenStreamClientId: "", screenStreamClientId: "",
keyInputFlag: false,
}; };
static local: LocalType = { static local: LocalType = {