()
| 2457 | } |
| 2458 | |
| 2459 | function restoreScrollbarScrollLock() { |
| 2460 | if (Date.now() >= scrollbarScrollLockUntil) { |
| 2461 | clearScrollbarScrollLock(); |
| 2462 | return false; |
| 2463 | } |
| 2464 | |
| 2465 | const scroller = editor?.scrollDOM; |
| 2466 | if (!scroller) return false; |
| 2467 | |
| 2468 | let restored = false; |
| 2469 | if ( |
| 2470 | typeof scrollbarScrollLockTop === "number" && |
| 2471 | Math.abs(scroller.scrollTop - scrollbarScrollLockTop) > 1 |
| 2472 | ) { |
| 2473 | scroller.scrollTop = scrollbarScrollLockTop; |
| 2474 | lastScrollTop = scroller.scrollTop; |
| 2475 | restored = true; |
| 2476 | } |
| 2477 | if ( |
| 2478 | typeof scrollbarScrollLockLeft === "number" && |
| 2479 | Math.abs(scroller.scrollLeft - scrollbarScrollLockLeft) > 1 |
| 2480 | ) { |
| 2481 | scroller.scrollLeft = scrollbarScrollLockLeft; |
| 2482 | lastScrollLeft = scroller.scrollLeft; |
| 2483 | restored = true; |
| 2484 | } |
| 2485 | return restored; |
| 2486 | } |
| 2487 | |
| 2488 | /** |
| 2489 | * Checks if the cursor is visible within the CodeMirror viewport. |
no test coverage detected