feat: implement useScreenClick

This commit is contained in:
2025-11-13 00:37:05 +01:00
parent c0eba9cfee
commit 4a8d46eb24
3 changed files with 64 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
export type ScreenClickCallback = (x: number, y: number) => void;
export const useScreenClick = (callback: ScreenClickCallback) => {
const registerScreenClickCallback = inject<
(callback: ScreenClickCallback) => () => void
>("registerScreenClickCallback");
onMounted(() => {
if (!registerScreenClickCallback) {
throw new Error(
"Missing registerScreenClickCallback - useScreenClick must be used within a Screen component",
);
}
const unregister = registerScreenClickCallback(callback);
onUnmounted(unregister);
});
};