• v0.2.2 5ad4b89e66

    v0.2.2 — live proximity refresh + map dot markers + COMMERCIAL row fit

    .leviathan released this 2026-05-08 03:12:17 +00:00

    • Map markers: replace osmdroid's default teardrop pin (which reads as
      a 'click me' affordance the map doesn't actually offer) with simple
      red dots for ALPRs, matching the blue user-position dot. Drawables
      share a single dotDrawable() helper.
    • Live re-eval on proximity slider change. Bug: moving the DeFlock or
      Citizen distance slider while scanning updated the map's visible
      radius but didn't trigger a re-evaluation of which detections fire,
      so events outside a tightened radius lingered until restart and
      events inside a widened radius wouldn't appear until the next
      fix/poll cycle. Fix: add DetectionStore.clearSource(), add
      refresh() to DeflockScanner + CitizenScanner that clear the source
      and re-emit against cached state, observe the proximity StateFlows
      in DetectionService (drop initial replay so we don't redundantly
      clear+re-emit on first scan start).
    • COMMERCIAL row label was clipping under the Switch. Shorten to
      'COMMERCIAL • Nest, Ring, Echo' (drop 'devices') and give every
      SourceToggle's Text Modifier.weight(1f) so labels wrap gracefully
      on narrow displays instead of getting truncated.

    Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com

    Downloads