diff --git a/src/components/Sidebar.vue b/src/components/Sidebar.vue index 1f82b67..7d0a248 100644 --- a/src/components/Sidebar.vue +++ b/src/components/Sidebar.vue @@ -10,14 +10,47 @@ import { } from "@vicons/ionicons5"; import { Keyboard24Regular } from "@vicons/fluent"; import { NIcon } from "naive-ui"; +import { useGlobalStore } from "../store/global"; +import { sendInjectKeycode } from "../frontcommand/controlMsg"; +import { + AndroidKeyEventAction, + AndroidKeycode, + AndroidMetastate, +} from "../frontcommand/android"; const router = useRouter(); const route = useRoute(); +const store = useGlobalStore(); function nav(name: string) { router.replace({ name }); } +function sleep(time: number) { + return new Promise((resolve) => { + setTimeout(() => { + resolve(); + }, time); + }); +} + +async function sendKeyCodeToDevice(code: AndroidKeycode) { + if (store.controledDevice) { + await sendInjectKeycode({ + action: AndroidKeyEventAction.AKEY_EVENT_ACTION_DOWN, + keycode: code, + repeat: 0, + metastate: AndroidMetastate.AMETA_NONE, + }); + await sleep(50); + await sendInjectKeycode({ + action: AndroidKeyEventAction.AKEY_EVENT_ACTION_UP, + keycode: code, + repeat: 0, + metastate: AndroidMetastate.AMETA_NONE, + }); + } +}