Windows catches up with Linux: the same fine-grained input, the same region capture, and the same way of asking a desktop to describe what is on screen.
The input primitives Windows was missing
Clicks now take held modifiers and a repeat count, /mouse_down and /mouse_up let you act while the button is held for drag-select and spreadsheet ranges, and /hold_key holds a key for a duration where /key only taps. The repeat count is applied inside the desktop, so a double- or triple-click no longer depends on how long each request took to arrive, and an unrecognised modifier is refused outright rather than dropped — a partial set performs a different gesture and would otherwise report success for it.
Region screenshots
GET /screenshot?region=x,y,w,h returns one rectangle, captured at the display’s own resolution. The returned width and height describe the crop rather than the screen, so a caller scaling coordinates against a cropped image does not land every click somewhere else.
Ask an action to describe the screen it left behind
Add ?context=1 to an action and the response also carries the pointer position, the focused window, and every window grouped by application with its geometry — the same shape the Linux image returns, so one format reads from both. A focused Chrome window also reports the elements on the page in screen coordinates, so a click can name what it is aiming at instead of estimating a position off a screenshot. Without the parameter, responses are byte-for-byte what they were.
Stricter credential checks
A Windows desktop is stricter about what it will accept as a valid credential. Update your computers to pick this up.
Chrome page elements are actually reachable
The browser could report no page elements at all, with nothing explaining why. Fixed.
