Skip to content

v2.7.0 — Rust 2024 edition, scroll-behavior fixes

Choose a tag to compare

@haxllo haxllo released this 23 Jul 13:36
· 899 commits to master since this release

Rust 2024 edition migration and scroll-behavior fixes for a stable, predictable overlay.

Changelog (7 commits since v2.6.0)

Architecture

  • Rust 2024 edition — migrated from edition 2021 to 2024. Reserved gen keyword renamed to generation across runtime_loop.rs, search_worker.rs, overlay/host.rs. Explicit unsafe {} blocks with SAFETY comments added inside all unsafe fn bodies.

Bug Fixes

  • Scroll-jump on typing — scrollToSelected() removed from render(); typing no longer auto-scrolls to top.
  • Orphaned scroll on new show — pendingShow flag set on Show push, consumed by first apply() with non-empty rows, resets scrollTop to 0 once per show/hide cycle.
  • Smooth scroll conflict — scrollToInstant(0) helper temporarily disables CSS scroll-behavior: smooth for programmatic resets, restores on next RAF. User-initiated scrolls remain smooth.
  • .selected class lost after render — .selected re-applied via JS after replaceChildren destroys and rebuilds the list.

Commit Log

  • 5c673de chore: migrate to Rust 2024 edition
  • 36be982 fix(ui): re-apply .selected class after render, never auto-scroll
  • 0dc2727 fix(ui): reset scrollTop to 0 on fresh show (showPending)
  • 4479bbb fix(ui): reset scrollTop at every stage of show cycle
  • 03738fb fix(ui): remove scroll-behavior smooth from list
  • 393f3f6 fix(ui): restore smooth scroll for keyboard/mouse, bypass for programmatic scrolls
  • c352441 chore: cleanup leftover raw scrollTop assignment in needsPainted callback

Binary