From 4f812bcf0c67f3de57f104a7c142a70e9bec4d29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yingyi=20/=20=E9=A2=96=E9=80=B8?= <49649786+Zuoqiu-Yingyi@users.noreply.github.com> Date: Fri, 21 Jul 2023 10:39:54 +0800 Subject: [PATCH] Add global mouse position variable (#8793) * :art: add global mouse position variable * :art: add global mouse position variables * :art: add global mouse position variable `coordinates` * :art: Increase operating efficiency * :art: Increase operating efficiency --- app/src/boot/globalShortcut.ts | 16 ++++++++++++++++ app/src/types/index.d.ts | 8 ++++++++ 2 files changed, 24 insertions(+) diff --git a/app/src/boot/globalShortcut.ts b/app/src/boot/globalShortcut.ts index d977a960b..c6756a403 100644 --- a/app/src/boot/globalShortcut.ts +++ b/app/src/boot/globalShortcut.ts @@ -106,6 +106,22 @@ export const globalShortcut = (app: App) => { } }); window.addEventListener("mousemove", (event: MouseEvent & { target: HTMLElement }) => { + // https://github.com/siyuan-note/siyuan/pull/8793 + const coordinates = window.siyuan.coordinates ?? (window.siyuan.coordinates = { + pageX: 0, + pageY: 0, + clientX: 0, + clientY: 0, + screenX: 0, + screenY: 0, + }); + coordinates.pageX = event.pageX; + coordinates.pageY = event.pageY; + coordinates.clientX = event.clientX; + coordinates.clientY = event.clientY; + coordinates.screenX = event.screenX; + coordinates.screenY = event.screenY; + if (window.siyuan.hideBreadcrumb) { document.querySelectorAll(".protyle-breadcrumb__bar--hide").forEach(item => { item.classList.remove("protyle-breadcrumb__bar--hide"); diff --git a/app/src/types/index.d.ts b/app/src/types/index.d.ts index 356aed17b..f50be4c60 100644 --- a/app/src/types/index.d.ts +++ b/app/src/types/index.d.ts @@ -280,6 +280,14 @@ interface ISiyuan { ctrlIsPressed?: boolean, altIsPressed?: boolean, shiftIsPressed?: boolean, + coordinates?: { + pageX: number, + pageY: number, + clientX: number, + clientY: number, + screenX: number, + screenY: number, + }, menus?: import("../menus").Menus languages?: { [key: string]: any;