Adding some tests for <Handlers/>

This commit is contained in:
vdv committed 2022-10-18 11:44:50 +02:00
1 parent da50441abc
commit 90e2c833a2
3 files changed
+164 -31

No files matched your search

+21 -18
View File
@@ -24,9 +24,9 @@ export const Handlers: react.FC<HandlersProperties> = (
) => {
const genericHandler = (event: any) => {
// console.log(`Log - Event: ${event.type}`);
// if (event.pageX !== undefined) {
// if (event.clientX !== undefined) {
// console.log(
// `Mouse : ${event.pageX}, ${event.pageY}, target: ${event.target}`
// `Mouse : ${event.clientX}, ${event.clientY}, target: ${event.target}`
// );
// console.log(
// `mouseState: ' ${JSON.stringify(mouseState)} (+${
@@ -50,7 +50,7 @@ export const Handlers: react.FC<HandlersProperties> = (
genericHandler(event);
setMouseState({
down: true,
starting: { x: event.pageX, y: event.pageY },
starting: { x: event.clientX, y: event.clientY },
});
};
@@ -61,27 +61,30 @@ export const Handlers: react.FC<HandlersProperties> = (
const mouseMoveHandler = throttle((event: any) => {
genericHandler(event);
props.transformMap(
{
x: event.pageX - mouseState.starting.x,
y: event.pageY - mouseState.starting.y,
},
null,
null
);
setMouseState({
down: true,
starting: {
x: event.pageX,
y: event.pageY,
},
});
if (mouseState.down) {
props.transformMap(
{
x: event.clientX - mouseState.starting.x,
y: event.clientY - mouseState.starting.y,
},
null,
null
);
setMouseState({
down: true,
starting: {
x: event.clientX,
y: event.clientY,
},
});
}
}, handlersConfig.mouseMoveThrottleDelay);
const [mouseState, setMouseState] = useState(initialMouseState);
return (
<div
className='handler'
role='presentation'
onMouseDown={mouseDownHandler}
onMouseMove={mouseMoveHandler}
onMouseUp={mouseUpHandler}