Closed bug report

Adom taskbar overlay badge was never ported to the native build: the overlayBadges setting does nothing

John Lauer · ·closed by John Lauer

What John asked (2026-09-21)

"What happened to you putting the Adom favicon overlay over the KiCad icons in the Windows taskbar? You used to do that in the pre-Rust version and it seems like you didn't bring that feature over."

He is right

The Python build (0.9.x) badged every KiCad window it opened with the Adom mark through the taskbar overlay (ITaskbarList3::SetOverlayIcon, handlers/win_taskbar.py), so the user could tell at a glance which KiCad windows an AI was driving and which were their own.

The native build carries the setting and nothing else:

  • kicad_get_settings / kicad_set_settings still expose overlayBadges (default true), and the hint still describes it as the Adom favicon overlay.
  • No code in rust/ calls SetOverlayIcon or touches ITaskbarList3. The setting is read by nothing.

So since 1.0.0 every user has had the badge switched "on" and never seen one. It was missed in the Rust port plan's phase 3 (the Windows layer) and no test looked for it.

Fix

  • Port the overlay: on every window the bridge opens or adopts (ownership ledger), set the Adom badge; clear it when the window is handed to the user or the bridge exits. Honour overlayBadges:false.
  • Independent of KiCad's own AUMID handling (kicad_taskbar_repair), which must stay untouched: the overlay is per window, not per shortcut.
  • Test: the verb battery reads the overlay state back for a bridge-opened window, so a silent loss like this one turns the run red.

1 Reply

John Lauer ·

Ported and proven on AdomLapper (John's laptop, KiCad 10.0.5) in insiders 1.0.43 to 1.0.46.

Overlay badge (overlayBadges, default on). The Adom mark goes on every KiCad window's taskbar button while a verb acts on KiCad, whoever launched it, and comes off five minutes after the last such verb. Read-only polls (kicad_state, kicad_window_info and the other reads the dashboard repeats) do not reset the clock. A fresh bridge process clears any badge a previous one left. Done through Adom Bridge's desktop_taskbar, like the Python build: no COM in the bridge, no AUMID touched.

Progress bar (activityIndicator progress or both). The slowest in-flight verb's measured percent on every KiCad button, a marquee when there is no estimate, cleared when the work stops.

Proof, screenshots of the taskbar at each stage (2026-09-21 UTC):

Time State Taskbar
11:48:51 No KiCad open no KiCad buttons
11:49:14 kicad_open_board running PCB Editor badged, green progress bar under it
11:50:00 verb finished bar gone, badge stays
11:50:51 three windows driven PCB and Schematic Editor both badged
12:10:40 last verb every KiCad button badged
12:16:21 5 min 45 s with no driving verb, dashboard still polling kicad_state all badges gone; log: no KiCad verb for 300 s: badge cleared on 4 window(s), KiCad is yours again

Closing as done.

John Lauer closed this ·

Log in to reply.