Commit 75ee15c
feat: cursor follow crop with text cursor focus mode
Adds a "Track cursor" crop mode that pans the viewport to keep the mouse
cursor inside a configurable safe zone during playback and export. A new
"Text cursor focus" toggle locks the viewport over the typing area when
the I-beam cursor is active and the mouse is stationary, then smoothly
switches back to mouse tracking once movement is detected. Mouse always
wins; a 700ms debounce prevents jarring transitions between modes.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>1 parent 1f9912b commit 75ee15c
12 files changed
Lines changed: 1093 additions & 119 deletions
File tree
- src
- components/video-editor
- videoPlayback
- lib/exporter
Large diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
174 | 174 | | |
175 | 175 | | |
176 | 176 | | |
| 177 | + | |
177 | 178 | | |
178 | 179 | | |
179 | 180 | | |
| |||
187 | 188 | | |
188 | 189 | | |
189 | 190 | | |
| 191 | + | |
190 | 192 | | |
191 | 193 | | |
192 | 194 | | |
| |||
489 | 491 | | |
490 | 492 | | |
491 | 493 | | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
492 | 497 | | |
493 | 498 | | |
494 | 499 | | |
| |||
1095 | 1100 | | |
1096 | 1101 | | |
1097 | 1102 | | |
| 1103 | + | |
1098 | 1104 | | |
1099 | 1105 | | |
1100 | 1106 | | |
| |||
1629 | 1635 | | |
1630 | 1636 | | |
1631 | 1637 | | |
| 1638 | + | |
1632 | 1639 | | |
1633 | 1640 | | |
1634 | 1641 | | |
| |||
1737 | 1744 | | |
1738 | 1745 | | |
1739 | 1746 | | |
| 1747 | + | |
1740 | 1748 | | |
1741 | 1749 | | |
1742 | 1750 | | |
| |||
1803 | 1811 | | |
1804 | 1812 | | |
1805 | 1813 | | |
| 1814 | + | |
1806 | 1815 | | |
1807 | 1816 | | |
1808 | 1817 | | |
| |||
1993 | 2002 | | |
1994 | 2003 | | |
1995 | 2004 | | |
| 2005 | + | |
1996 | 2006 | | |
1997 | 2007 | | |
1998 | 2008 | | |
| |||
4220 | 4230 | | |
4221 | 4231 | | |
4222 | 4232 | | |
| 4233 | + | |
4223 | 4234 | | |
4224 | 4235 | | |
4225 | 4236 | | |
| |||
4403 | 4414 | | |
4404 | 4415 | | |
4405 | 4416 | | |
| 4417 | + | |
4406 | 4418 | | |
4407 | 4419 | | |
4408 | 4420 | | |
| |||
4704 | 4716 | | |
4705 | 4717 | | |
4706 | 4718 | | |
| 4719 | + | |
4707 | 4720 | | |
4708 | 4721 | | |
4709 | 4722 | | |
| |||
5118 | 5131 | | |
5119 | 5132 | | |
5120 | 5133 | | |
| 5134 | + | |
5121 | 5135 | | |
5122 | 5136 | | |
5123 | 5137 | | |
| |||
6338 | 6352 | | |
6339 | 6353 | | |
6340 | 6354 | | |
| 6355 | + | |
| 6356 | + | |
| 6357 | + | |
| 6358 | + | |
6341 | 6359 | | |
6342 | 6360 | | |
6343 | 6361 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
165 | 165 | | |
166 | 166 | | |
167 | 167 | | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
168 | 174 | | |
169 | 175 | | |
170 | 176 | | |
| |||
350 | 356 | | |
351 | 357 | | |
352 | 358 | | |
| 359 | + | |
353 | 360 | | |
354 | 361 | | |
355 | 362 | | |
| |||
433 | 440 | | |
434 | 441 | | |
435 | 442 | | |
| 443 | + | |
436 | 444 | | |
437 | 445 | | |
438 | 446 | | |
| |||
611 | 619 | | |
612 | 620 | | |
613 | 621 | | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
614 | 628 | | |
615 | 629 | | |
616 | 630 | | |
| |||
1534 | 1548 | | |
1535 | 1549 | | |
1536 | 1550 | | |
| 1551 | + | |
| 1552 | + | |
| 1553 | + | |
| 1554 | + | |
| 1555 | + | |
| 1556 | + | |
| 1557 | + | |
| 1558 | + | |
| 1559 | + | |
| 1560 | + | |
| 1561 | + | |
1537 | 1562 | | |
1538 | 1563 | | |
1539 | 1564 | | |
| |||
2194 | 2219 | | |
2195 | 2220 | | |
2196 | 2221 | | |
| 2222 | + | |
| 2223 | + | |
| 2224 | + | |
| 2225 | + | |
| 2226 | + | |
| 2227 | + | |
| 2228 | + | |
| 2229 | + | |
| 2230 | + | |
| 2231 | + | |
| 2232 | + | |
| 2233 | + | |
| 2234 | + | |
| 2235 | + | |
| 2236 | + | |
| 2237 | + | |
| 2238 | + | |
| 2239 | + | |
| 2240 | + | |
| 2241 | + | |
| 2242 | + | |
| 2243 | + | |
| 2244 | + | |
| 2245 | + | |
| 2246 | + | |
| 2247 | + | |
| 2248 | + | |
| 2249 | + | |
| 2250 | + | |
| 2251 | + | |
| 2252 | + | |
| 2253 | + | |
| 2254 | + | |
| 2255 | + | |
| 2256 | + | |
| 2257 | + | |
| 2258 | + | |
| 2259 | + | |
2197 | 2260 | | |
2198 | 2261 | | |
2199 | 2262 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
34 | 36 | | |
35 | 37 | | |
36 | 38 | | |
| |||
45 | 47 | | |
46 | 48 | | |
47 | 49 | | |
| 50 | + | |
48 | 51 | | |
49 | 52 | | |
50 | 53 | | |
| |||
129 | 132 | | |
130 | 133 | | |
131 | 134 | | |
| 135 | + | |
132 | 136 | | |
133 | 137 | | |
134 | 138 | | |
| |||
816 | 820 | | |
817 | 821 | | |
818 | 822 | | |
| 823 | + | |
| 824 | + | |
| 825 | + | |
| 826 | + | |
| 827 | + | |
| 828 | + | |
| 829 | + | |
| 830 | + | |
| 831 | + | |
| 832 | + | |
| 833 | + | |
| 834 | + | |
| 835 | + | |
| 836 | + | |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
819 | 844 | | |
820 | 845 | | |
821 | 846 | | |
| |||
977 | 1002 | | |
978 | 1003 | | |
979 | 1004 | | |
| 1005 | + | |
980 | 1006 | | |
981 | 1007 | | |
982 | 1008 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
497 | 497 | | |
498 | 498 | | |
499 | 499 | | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
500 | 526 | | |
501 | 527 | | |
502 | 528 | | |
| |||
0 commit comments