Ignacy Łątka
706e32ce02
feat(screen-recording): draw touch gestures into the recording
...
Enable simulator-server's built-in touch visualizer for the duration of a
recording so taps, swipes, drags, pinches and rotates are drawn straight
into the video: a pulse for a tap, a fading comet trail for a swipe/drag,
and paired markers for a two-finger gesture. This makes a recording
self-explanatory — a viewer sees where each interaction landed instead of
watching the UI react to an invisible finger.
The overlay is rendered by simulator-server into the same MJPEG stream the
recording already consumes (nothing is composited host-side), driven by the
touch events argent already sends. `screen-recording-start` turns it on
right after the encoder goes live and restores it to off when the capture
ends (stop, time-limit cap, encoder crash, or session teardown), so the
visualizer never outlives the recording it was enabled for.
On by default; pass `showTouches: false` to capture the raw screen. Enabling
is best-effort — a build without the pointer feature just yields a warning
at stop and a normal, overlay-free video.
2026-07-23 01:08:17 +02:00
..
2026-07-12 13:42:23 +02:00
2026-07-01 14:59:37 +02:00
2026-07-03 16:19:28 +02:00
2026-07-07 10:05:42 +02:00
2026-07-21 07:28:48 +02:00
2026-07-12 13:42:23 +02:00
2026-07-20 16:21:56 +02:00
2026-06-25 13:29:10 +02:00
2026-06-25 21:48:16 +02:00
2026-07-13 17:15:01 +02:00
2026-07-15 07:55:31 +02:00
2026-07-15 20:31:23 +02:00
2026-07-01 14:59:37 +02:00
2026-05-11 11:39:10 +02:00
2026-05-27 16:24:31 +02:00
2026-06-25 13:29:10 +02:00
2026-05-12 14:21:09 +02:00
2026-06-22 20:31:45 +02:00
2026-06-03 17:14:35 +02:00
2026-05-12 14:21:09 +02:00
2026-07-01 14:59:37 +02:00
2026-07-03 16:19:23 +02:00
2026-07-10 12:51:24 +02:00
2026-07-07 16:29:22 +02:00
2026-07-01 14:59:37 +02:00
2026-06-16 15:46:41 +02:00
2026-05-27 16:24:31 +02:00
2026-07-13 17:15:01 +02:00
2026-07-15 08:07:03 +02:00
2026-07-13 22:16:33 +02:00
2026-05-27 16:24:07 +02:00
2026-06-03 22:23:29 +02:00
2026-05-27 16:24:07 +02:00
2026-06-22 20:31:45 +02:00
2026-07-08 17:22:31 +02:00
2026-07-13 17:15:01 +02:00
2026-07-13 17:15:01 +02:00
2026-07-10 12:51:24 +02:00
2026-05-11 11:39:10 +02:00
2026-06-15 14:32:06 +02:00
2026-05-12 14:21:09 +02:00
2026-06-15 11:03:23 +02:00
2026-06-17 12:20:55 +02:00
2026-06-15 15:31:51 +02:00
2026-06-15 11:03:23 +02:00
2026-06-15 11:03:23 +02:00
2026-06-15 11:03:23 +02:00
2026-06-15 11:03:23 +02:00
2026-06-15 11:03:23 +02:00
2026-06-17 12:20:55 +02:00
2026-06-17 12:20:55 +02:00
2026-07-02 16:42:10 +02:00
2026-07-13 17:15:01 +02:00
2026-06-15 11:03:23 +02:00
2026-06-15 11:03:23 +02:00
2026-06-15 11:03:23 +02:00
2026-06-17 12:20:55 +02:00
2026-06-15 15:57:45 +02:00
2026-06-15 14:32:06 +02:00
2026-06-25 21:16:03 +02:00
2026-07-06 17:12:20 +02:00
2026-07-03 16:19:16 +02:00
2026-05-11 11:39:10 +02:00
2026-07-13 17:15:01 +02:00
2026-04-28 15:32:39 +02:00
2026-05-27 11:46:12 +02:00
2026-07-13 17:15:01 +02:00
2026-05-26 10:07:04 +02:00
2026-05-11 11:39:10 +02:00
2026-07-10 12:51:05 +02:00
2026-07-01 14:59:37 +02:00
2026-06-22 20:31:45 +02:00
2026-07-01 19:57:56 +02:00
2026-07-07 13:36:27 +02:00
2026-07-10 11:52:28 +02:00
2026-07-03 16:56:15 +02:00
2026-07-10 12:29:48 +02:00
2026-06-25 13:29:10 +02:00
2026-06-19 18:22:34 +02:00
2026-04-28 15:15:03 +02:00
2026-07-10 12:29:48 +02:00
2026-07-10 12:51:24 +02:00
2026-06-03 17:44:15 +02:00
2026-07-17 12:16:17 +02:00
2026-07-13 17:15:01 +02:00
2026-07-07 16:29:22 +02:00
2026-06-01 17:15:12 +02:00
2026-07-10 12:29:48 +02:00
2026-06-17 12:20:55 +02:00
2026-07-07 16:29:22 +02:00
2026-07-12 13:42:23 +02:00
2026-07-13 17:15:01 +02:00
2026-07-20 19:26:33 +02:00
2026-07-10 12:51:24 +02:00
2026-07-10 12:51:24 +02:00
2026-07-14 08:31:50 +02:00
2026-07-15 13:42:55 +02:00
2026-07-10 12:51:05 +02:00
2026-07-01 14:59:37 +02:00
2026-07-01 19:57:56 +02:00
2026-07-13 16:56:49 +02:00
2026-07-01 19:57:56 +02:00
2026-06-25 13:29:10 +02:00
2026-07-01 11:02:33 +02:00
2026-07-20 17:05:16 +02:00
2026-06-24 11:22:57 +02:00
2026-07-13 17:15:01 +02:00
2026-07-13 17:15:01 +02:00
2026-07-22 23:55:48 +02:00
2026-04-07 17:36:56 +02:00
2026-04-16 00:16:10 +02:00
2026-07-21 10:28:14 +02:00
2026-07-10 12:51:05 +02:00
2026-07-12 13:42:23 +02:00
2026-07-03 16:45:29 +02:00
2026-07-03 16:45:29 +02:00
2026-07-03 16:45:29 +02:00
2026-07-03 16:45:29 +02:00
2026-07-12 13:42:23 +02:00
2026-06-16 14:58:22 +02:00
2026-06-01 15:04:25 +02:00
2026-07-21 16:56:31 +02:00
2026-07-01 19:57:56 +02:00
2026-07-01 19:57:56 +02:00
2026-07-01 19:57:56 +02:00
2026-07-13 16:56:49 +02:00
2026-07-01 19:57:56 +02:00
2026-06-24 11:22:57 +02:00
2026-07-07 13:36:27 +02:00
2026-07-12 13:42:23 +02:00
2026-07-12 13:42:23 +02:00
2026-07-03 16:19:31 +02:00
2026-07-02 17:37:30 +02:00
2026-07-01 14:59:37 +02:00
2026-07-23 01:08:17 +02:00
2026-07-02 12:40:19 +02:00
2026-06-03 22:28:20 +02:00
2026-06-01 15:04:25 +02:00
2026-07-01 14:59:37 +02:00
2026-07-16 17:21:59 +02:00
2026-07-01 14:59:37 +02:00
2026-07-01 14:59:37 +02:00
2026-07-13 22:45:06 +02:00
2026-06-24 21:00:54 +02:00
2026-07-03 14:39:07 +02:00
2026-06-17 12:20:55 +02:00
2026-07-13 22:16:33 +02:00
2026-07-13 17:15:01 +02:00
2026-07-01 14:59:37 +02:00
2026-06-24 14:03:57 +02:00
2026-06-01 15:04:25 +02:00
2026-07-07 16:29:22 +02:00
2026-07-01 14:59:37 +02:00
2026-07-01 14:59:37 +02:00
2026-05-12 14:21:09 +02:00
2026-07-03 16:19:16 +02:00
2026-07-08 12:24:19 +02:00
2026-06-01 18:29:16 +02:00
2026-06-17 15:22:04 +02:00
2026-07-13 16:56:49 +02:00
2026-07-03 16:19:29 +02:00
2026-07-03 16:19:29 +02:00
2026-07-03 16:19:29 +02:00
2026-07-01 11:02:33 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-07-01 11:02:33 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-07-20 17:05:16 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-06-22 20:31:45 +02:00
2026-07-07 10:05:42 +02:00
2026-06-26 16:40:27 +02:00
2026-07-22 23:55:48 +02:00
2026-05-11 11:39:10 +02:00
2026-06-25 13:29:10 +02:00