mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-10-27 19:27:21 -06:00
The canvas hands a dragging tool every position the pointer passed within a frame for pens and fingers (touch events) and for a macOS pen (the stylus feed's moves, #852), but a mouse got the frame's last position only: one sample per frame. A fast mouse stroke kept a position every 10 to 20 px, too few for any Fidelity to follow the hand, and fewer still while the app is busy and frames come slower. frame_moves now keeps a mouse's moves as well, without a pressure (the tool takes the host's latest, a mouse's being full; a pen's on X11 among them), with the same bound of 64 moves for a stalled frame, as touch and pen moves already reach every tool. Tests: a_mouse_stroke_keeps_every_move_of_a_frame (20 moves in one frame reach the Pencil; it got 2 points before this change), and frame_moves_keeps_touch_feed_and_mouse_samples_with_their_pressure replaces the test that a mouse's moves were left out. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>