Summary
The scrap toggle in the storage scrap screen has an accessibility issue that existed before the Compose migration and should be handled in a follow-up change.
Today the control uses a very small visual/icon area (21x18dp) and does not expose a spoken label for screen readers, which makes it hard to tap and not meaningfully announced by TalkBack.
Required changes
- Make the scrap toggle a properly labeled accessible control.
- Ensure the tappable area meets the recommended minimum touch target size (at least
48dp).
- Add a meaningful spoken label via
contentDescription or semantics so TalkBack can announce the scrap action/state.
- Keep the visual icon size as-is if needed, but enlarge the tappable container around it.
Affected areas
app/src/main/java/com/runnect/runnect/presentation/storage/StorageScrapScreen.kt
- Any equivalent scrap/favorite toggle implementation for the same feature path if the accessibility behavior is shared elsewhere.
Rationale
This is not a regression introduced by PR #392. The same accessibility gap existed in the previous XML-based implementation, so it is better tracked as a dedicated follow-up item rather than expanding the scope of the current migration PR.
Acceptance criteria
- The scrap toggle has a minimum
48dp x 48dp touch target.
- TalkBack announces a meaningful label/action for the control.
- The behavior remains functionally identical aside from the accessibility improvement.
- If there are UI tests or screenshot tests for this area later, they should continue to pass after the change.
Backlinks
Requested by: @unam98
Summary
The scrap toggle in the storage scrap screen has an accessibility issue that existed before the Compose migration and should be handled in a follow-up change.
Today the control uses a very small visual/icon area (
21x18dp) and does not expose a spoken label for screen readers, which makes it hard to tap and not meaningfully announced by TalkBack.Required changes
48dp).contentDescriptionor semantics so TalkBack can announce the scrap action/state.Affected areas
app/src/main/java/com/runnect/runnect/presentation/storage/StorageScrapScreen.ktRationale
This is not a regression introduced by PR #392. The same accessibility gap existed in the previous XML-based implementation, so it is better tracked as a dedicated follow-up item rather than expanding the scope of the current migration PR.
Acceptance criteria
48dp x 48dptouch target.Backlinks
Requested by: @unam98