Adom Bridge
Public Made by Adomby adom
Adom Bridge unleashes your AI onto your full PC: full power, full safety. The AI breaks out of the container it runs in and onto your real machine, managing and running your entire laptop as you: launch apps, move files, drive any window, control KiCad, Fusion 360 or your real signed-in browser. Works with any AI, cloud or local (Claude Desktop, Claude Code, Codex), no Hydrogen required. Bridge and its bridges are an operating system for AI, with managed Node and Python runtimes, and a human-onl
desktop_mouse_drag: press, move through points, release (needed to orbit canvases with no view controls)
Request from the KiCad Bridge, for adom/kicad-bridge#110 (a "ganged" symbol + footprint + 3D-chip view John wants as a first-class verb).
The gap. ab has desktop_mouse_move and desktop_click, but no drag: button down at A, move through intermediate points, button up at B. KiCad's Footprint Chooser has an embedded 3D preview pane with no view controls, no menu, no UIA children and no keyboard orbit; the only way to turn it to an isometric view is a mouse drag on the canvas (measured on ConfRoomROG, KiCad 10.0.5, by the thread that filed #110). Other canvases have the same shape: a 3D orbit, a splitter, a slider, a lasso.
Ask. desktop_mouse_drag {hwnd?, from:{x,y}, to:{x,y}, button?: "left", steps?: 12, durationMs?: 300, space?: "window"|"screen"|"image", reason}:
- presses at
from, moves throughstepsinterpolated points overdurationMs(a canvas that tracks motion ignores a teleport), releases atto; - refuses without
reason, like the other real-input verbs, and restores the prior foreground afterwards when it had to raise the target; - with
hwnd, verifies that window is underfrombefore pressing, and answerstarget_not_under_cursorinstead of dragging on whatever is there; - reports the points it actually sent.
A posted-message variant (WM_LBUTTONDOWN / WM_MOUSEMOVE / WM_LBUTTONUP to the hwnd, no real cursor) would be even better for background use where the target honours posted input; the KiCad Bridge already does that for clicks (post_click) and can try it on the 3D pane itself, but wx canvases that capture the mouse generally need real input.
Filed by the KiCad Bridge owner. Not urgent: #110 can ship with the 3D pane at its default top view and gain the isometric turn when this exists.