write_form_value_xtest
Writes a value into 1C form object-attribute fields via protocol and XTEST input, committing with a real blur or optional save when pure protocol replay cannot.
Instructions
Write a value into a form field via the protocol+XTEST HYBRID — for OBJECT-attribute fields (Объект.* on catalog/document forms) that the pure protocol replay cannot commit.
The pure write_form_value only sets a field's edit-text; an object attribute commits only on a genuine user
edit + blur, which a programmatic SetEditText does not trigger (and 1C exposes no AT-SPI elements). The 1C window
IS OS-accessible, so this replays the capture's open+focus prefix (protocol, addresses field by name), then
injects value via xdotool type (Unicode/Cyrillic-aware) into the focused client window on display,
blurs (Tab -> commit), optionally saves (save=True -> Ctrl+S -> DB), and reads the value back by replaying
the capture's read sequence. PREREQ: launch the client with launch_test_client(display=":89", port=…) (and a
window manager so the form lays out — matchbox); display must be that Xvfb. Defaults match the demo capture
(Справочник.Валюты.Наименование). Returns {field, value, committed, value_in_readback, readback_value,
diverged_at, blurred, saved, display}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| blur | No | ||
| host | No | 127.0.0.1 | |
| port | No | ||
| save | No | ||
| field | No | Наименование | |
| value | Yes | ||
| capture | No | demo-write | |
| display | No | :89 | |
| read_frame | No | ||
| read_start | No | ||
| setup_stop | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||