Repository navigation
fix(editor): restore smooth Page Up/Down navigation - #271
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Deploying markdownviewer with
|
| Latest commit: |
ee2b3c9
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://40167d24.markdownviewer.pages.dev |
| Branch Preview URL: | https://fix-263-editor-page-navigati.markdownviewer.pages.dev |
wwdd48s8km-bit
left a comment
There was a problem hiding this comment.
Thanks for the fix! The original issue is resolved.
I did notice one regression, though: Page Up/Down in the Editor no longer has the smooth scrolling animation it had before. Page Up/Down in the Preview still scrolls smoothly.
Could you please check if the fix affects the Editor's scroll behavior?
Thanks for the quick reply and for confirming that the original issue has been fixed. Regarding the smooth scrolling animation in the Editor section, I’m checking it now and trying to fix that behavior as well. Thanks for pointing it out! |
Fixes #263.
Page Up/Down in the focused Editor could shift the entire workspace left and leave blank space on the right. Editor paging could also jump instantly instead of animating, and delayed synchronized scroll events could interrupt an ongoing animation.
Closed Settings dropdowns previously remained in the layout with
display: block; visibility: hidden, adding 224px of horizontal overflow before Popper positioned them. Closed dropdowns now usedisplay: none, while opening/closing transitions are preserved. The original issue was reproduced in Windows Edge at 100% zoom and display scale with the default Welcome document.For Editor paging, the browser still chooses the destination, moves the caret, and extends Shift selections. When a native page scroll finishes immediately, a smooth-scroll fallback animates that same destination before painting; native animations are left intact. The fallback respects reduced motion and applies to both Editors. Synchronized scroll destinations are tracked using the browser's actual rounded/clamped offsets, preventing delayed target events from feeding back into the source animation. Scroll-sync release timers are also canceled when superseded.
The shared web/PWA assets and desktop resources are synchronized. The usage guide and changelog describe the behavior.
Validation:
7bba274) because it only paints the starting and final scroll positions; it passes with the fix.npm testpipeline: build and SEO checks, 22 unit tests, and all 242 Chromium end-to-end tests passed.node desktop-app/prepare.jscompleted successfully; generated web/desktop assets are synchronized.git diff --checkpassed.Mobile coverage uses browser viewports; the shared code also ships in the web/PWA and prepared desktop resources.
Original horizontal shift, reproduced during investigation