ohif-viewer/tests/utils/mouseUtils.ts

26 lines
787 B
TypeScript
Raw Normal View History

2025-04-16 21:56:52 +02:00
import { Page } from 'playwright-test-coverage';
2024-07-02 16:20:31 +02:00
interface WindowWithMousePosition extends Window {
mouseX: number;
mouseY: number;
}
export const initializeMousePositionTracker = async (page: Page) => {
const window = (await page.evaluateHandle('window')) as any;
2024-07-02 16:20:31 +02:00
await page.evaluate((window: WindowWithMousePosition) => {
window.mouseX = 0;
window.mouseY = 0;
window.addEventListener('mousemove', event => {
2024-07-02 16:20:31 +02:00
window.mouseX = event.clientX;
window.mouseY = event.clientY;
});
}, window);
};
2024-07-02 16:20:31 +02:00
export const getMousePosition = async (page: Page) => {
const window = (await page.evaluateHandle('window')) as any;
2024-07-02 16:20:31 +02:00
return await page.evaluate((window: WindowWithMousePosition) => {
return { x: window.mouseX, y: window.mouseY };
}, window);
};