app
KiCad - the KiCad Bridge
Public Made by Adomby adom
Reference implementation of the KiCad bridge: multi-instance Python server, forward path via kicad-cli, reverse path via in-process plugin. Most complex of the three bundled bridges.
← Commit history
0.9.308: Motion gate: GetForegroundWindow can lag AD's z-order right after a raise, which aborted the symbol beat's motion at its first gesture on John's laptop while AD had already measured the window on top; the gate now waits up to 1.5 s for the OS to agree. Panel record keeps the callback URL across stage-advance shows.
3 files changed
+4−3
BRIDGE_VERSION+1−1@@ -1 +1 @@-0.9.307+0.9.308
bridge.json+1−1@@ -2,7 +2,7 @@ "manifest_version": 1, "name": "kicad", "displayName": "KiCad EDA",- "version": "0.9.307",+ "version": "0.9.308", "description": "Reverse bridge for KiCad \u2014 board/schematic introspection, lint via kicad-cli, plugin install, multi-instance probe, in-process DRC.", "homepage": "https://wiki.adom.inc/adom/adom-bridge", "author": "Adom Inc.",
handlers/demo.py+2−1@@ -1028,7 +1028,8 @@ def _panel_show(stage: int, state: str | None = "playing") -> bool: out = {} d = ((out or {}).get("data") if isinstance(out, dict) else None) or out or {} shown = bool(d.get("shown")) or (r.get("success") is True and not str(r.get("error") or ""))- _job_update(panel={"shown": shown, "stage": int(stage), "callbackUrl": args.get("eventCallbackUrl"),+ _job_update(panel={"shown": shown, "stage": int(stage),+ "callbackUrl": args.get("eventCallbackUrl") or ((_JOB.get("panel") or {}).get("callbackUrl")), "error": (err or d.get("error") or None), "reply": {k: d.get(k) for k in ("shown", "id", "state", "stage", "callbackAccepted", "error") if k in d}}) if shown: