input: Expose editable values to accessibility clients (#2638)
Closes #2636 ### Description Expose the current value of ordinary editable inputs and handle AccessKit `SetValue` by replacing the full input value through the existing state path. Masked, password, and new-password inputs do not expose their value. They still accept `SetValue` while enabled, which preserves write-only password behavior. Disabled inputs do not register the write action. AccessKit maps string value writes on Windows and macOS. Its Unix adapter does not currently implement AT-SPI EditableText writes, so this PR does not claim live Linux value replacement. ### Screenshot Not applicable. Rendering does not change. ### How to Test Exact candidate `61fa84a6` on Rust 1.97.1: - `cargo test -p gpui-component input --lib`: 5 passed - `cargo test -p gpui-component`: 345 passed - `cargo clippy -p gpui-component --all-targets -- -D warnings` - story application compile: passed The rendered-element regression writes the actual AccessKit node, proves that the ordinary value and `SetValue` support are emitted, sends the exact `ActionData::Value` body through the handler, and verifies the stored value changes. Separate cases prove masked and password values remain hidden. ### AI Assistance The implementation and tests were AI-assisted by Friday. Chris Hynes defined the behavior and owns the final review. ### Checklist - [x] I have read the [CONTRIBUTING](../CONTRIBUTING.md) document and followed the guidelines. - [ ] Reviewed the changes in this PR and confirmed AI generated code (If any) is accurate. - [ ] Passed `cargo run` for story tests related to the changes. The story application compiles; it has not been launched. - [ ] Tested macOS, Windows and Linux platforms performance (if the change is platform-specific). The shared AccessKit node is tested; live adapter behavior is not claimed beyond current AccessKit support. --------- Co-authored-by: Friday <260232009+buildfriday@users.noreply.github.com> Co-authored-by: Floyd Wang <gassnake999@gmail.com>
C
Chris Hynes committed
8ee2865dad0e210f69e6649beae895bafcdf9246
Parent: 88f102d
Committed by GitHub <noreply@github.com>
on 8/3/2026, 3:56:28 AM