fix(ui): finish accessibility roles and action labels for clickable surfaces

Add role = Role.Button and onClickLabel to the remaining Modifier.clickable
sites in shared Compose code so TalkBack / screen readers announce each
affordance with an action verb rather than falling back to the list-item
title.

- feature/messaging MessageActionsBottomSheet.kt: status, reply, copy,
  select, and delete rows plus the quick-emoji React box (6 sites).
- feature/connections DeviceListItem.kt: combined/clickable branches for
  device select.
- feature/wifi-provision WifiProvisionScreen.kt: WiFi network list item.
- feature/node NodeFilterTextField.kt: trailing clear-filter icon.

New Res.string keys in core/resources (all action verbs used as
onClickLabel): action_show_message_status, action_send_reply,
action_copy_message, action_select_message, action_delete_message,
action_react_with_emoji, action_select_device, action_select_network.

Validation: spotlessApply, spotlessCheck, detekt, kmpSmokeCompile all pass.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
James Rich 2026-04-17 11:03:28 -05:00
parent 90f6e21a9c
commit 7246bf6e83
4 changed files with 75 additions and 10 deletions

View file

@ -1276,4 +1276,12 @@
<string name="filter_icon">Filter</string>
<string name="remove_filter">Remove filter</string>
<string name="show_iaq_legend">Show air quality legend</string>
<string name="action_show_message_status">Show message status</string>
<string name="action_send_reply">Send reply</string>
<string name="action_copy_message">Copy message</string>
<string name="action_select_message">Select message</string>
<string name="action_delete_message">Delete message</string>
<string name="action_react_with_emoji">React with emoji</string>
<string name="action_select_device">Select device</string>
<string name="action_select_network">Select network</string>
</resources>