Skip to content

momPanel v0.4.0

Choose a tag to compare

@github-actions github-actions released this 04 Jul 00:29
cdf5a6f

Added

  • High-memory alert. A background watcher (src-tauri/src/memwatch.rs) polls RAM
    every 2s on its own thread — independent of the frontend tile loop, which pauses when
    the window is hidden — and fires a native critical desktop notification
    (notify-send -u critical, reliable on GNOME/Wayland where a client window cannot pin
    itself on top). Backend-driven audio: an alert tone (canberra-gtk-play) and a
    spoken warning naming the top memory consumer (spd-say, e.g. "Memory usage high.
    Opera is using 4.3 gigabytes."), played at a 60% volume floor (wpctl, boosts if
    low, never lowers, restores after). A pure, tested escalation state machine
    (memwatch::advance): trigger → pulse every ~30s → centered modal (memwarn,
    src/warn.html/warn.js) if still unacknowledged. 7-point hysteresis; Dismiss
    (dismiss_mem_warn) suppresses until recovery; Open momPanel (open_main_window).
  • Theming / personalization. Curated color slots via CSS variables — accent,
    background, tile, and a 3-color gauge palette (gauge.js refactored to read
    --gauge-ok/warn/bad). Text (--ink) auto-contrasts from background luminance so a
    light background stays readable. Named presets (Midnight/Warm/High-contrast) + per-slot
    color pickers + reset in the About panel; applied on boot via src/theme.js; persisted
    as a theme object in config.
  • Settings (About panel): warn on/off, threshold 70–90% (5% steps), sound on/off +
    tone picker + volume-floor selector, speech on/off, pulse on/off, escalation
    on/off, and an alert-dialog color (styles the escalation modal, auto-contrast text).
    Persisted as mem_warn_* fields.
  • Capability memwarn scoping the modal window (event + window hide/close).

Changed

  • Closing the main window now explicitly quits the app (the persistent hidden modal
    window would otherwise keep the process alive).

Notes

  • Linux is the v1 target for the alert's audio/notification; Windows toast + TTS are a
    follow-up. The updater/AppImage pipeline is unchanged.

Installs and updates automatically from this release. Linux/Zorin: download the AppImage (the self-updating bundle). Windows: run the _x64-setup.exe.