Skip to content

Conversation

@AlexVanGogen
Copy link
Contributor

@AlexVanGogen AlexVanGogen commented Oct 23, 2025

Summary

  1. Ensured scrolling always succeeds. ScrollingSynchronizer API is changed to support this contract. In IJ, scrolling events are sent frequently,
    so the Markdown preview picks only last ones within a certain timeframe. If scrollToLine fails (because the target block is unsupported, for example), then the scrolling stops abruptly.

  2. Ensured scrolling to the block on the first line works.

Before:

Screen.Recording.2025-10-23.at.18.58.51.mov

After:

Screen.Recording.2025-10-23.at.19.56.34.mov

Release notes

Bug fixes

  • JEWEL-1067 Markdown: improve scrolling behavior (#3287)

Deprecated API

  • ScrollingSynchronizer#scrollToLine is now marked as non-extendable (@ApiStatus.NonExtendable), in favor of new methods ScrollingSynchronizer#scrollToCoordinate and ScrollingSynchronizer#findYCoordinateToScroll (#3287)

@AlexVanGogen AlexVanGogen force-pushed the alexvangogen/JEWEL-1067-better-scroll-sync branch from 8835b04 to f9f25a6 Compare October 23, 2025 18:22
@rock3r rock3r added the Jewel label Oct 29, 2025
1. Ensured scrolling always succeeds.
ScrollingSynchronizer API is changed to support this contract.
In IJ, scrolling events are sent frequently,
so the Markdown preview picks only last ones within a certain
timeframe. If `scrollToLine` fails (because the target block
is unsupported, for example), then the scrolling stops abruptly.

2. Ensured scrolling to the block on the first line works.
@AlexVanGogen AlexVanGogen force-pushed the alexvangogen/JEWEL-1067-better-scroll-sync branch from f9f25a6 to 08ad2a1 Compare October 29, 2025 16:12
@AlexVanGogen
Copy link
Contributor Author

@rock3r Release notes -- updated

@rock3r
Copy link
Collaborator

rock3r commented Nov 7, 2025

Ready to merge

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants