fix(app): stabilize canvas diff rendering

Keep diff headers and painted content on the same scroll clock while preserving native scrolling and independent per-file horizontal offsets.

Complete review, selection, typography, tree, and palette parity without returning line rendering to React.
This commit is contained in:
Mohamed Boudra
2026-08-17 21:14:38 +02:00
parent 4d23905587
commit c7b103a2cd
50 changed files with 2180 additions and 580 deletions
@@ -337,6 +337,7 @@ export function useCloseFileExplorerGesture() {
windowWidth,
} = useMobilePanelsRuntime();
const { startedRevision, touchStartX, touchStartY } = useGestureState();
const horizontalScroll = useHorizontalScrollOptional();
const showMobileAgent = usePanelStore((state) => state.showMobileAgent);
const commit = useRevisionCommit(showMobileAgent);
@@ -372,6 +373,7 @@ export function useCloseFileExplorerGesture() {
});
if (
!canBeginMobilePanelGesture(motionState.value, "file-explorer", position.value) ||
horizontalScroll?.activeGestureStartedScrolled.value ||
panIntent === "fail"
) {
stateManager.fail();
@@ -405,6 +407,7 @@ export function useCloseFileExplorerGesture() {
beginGesture,
commit,
finishGesture,
horizontalScroll?.activeGestureStartedScrolled,
motionState,
position,
rightCloseGestureRef,