Skip to content

0.9.18

Latest

Choose a tag to compare

@github-actions github-actions released this 14 Oct 04:50

Added

  • anchor: "bottom" on :scroll, for chat logs (MOB-481). The scroll
    opens at the end of its content. On iOS 18 and later, when content grows or
    the viewport shrinks while the view is at the end or within 32 pt of it, it
    moves to the new end; a user who has scrolled further up is left where they
    are. On iOS 17 it opens at the end and growth is left
    to SwiftUI's defaultScrollAnchor(.bottom). Vertical, non-lazy scrolls
    only; "top" (the default) is unchanged. Android needs the matching mob_new
    template. See guides/components.md.

Fixed

  • An adaptive theme now follows the OS light/dark flip (MOB-479).
    Mob.Theme.AdaptiveWatcher decided whether to re-resolve by comparing the
    active theme with what the adaptive module returns after the OS had
    flipped, which never matched, so Mob.Theme.Adaptive (and any module
    registered with register_adaptive/1) stayed on the old scheme. The
    watcher now goes by what was passed to Mob.Theme.set/1: the registered
    module, or {module, overrides} (the overrides are kept), follows the OS;
    a struct, a keyword list or any other module is a fixed theme and is left
    alone. A plugin's suggested default font, applied at boot, no longer turns
    a module-set theme into a fixed one. See
    decisions/2026-10-13-adaptive-theme-follows-set-source.md.