Skip to content

fix: improve the outfit selection grid UI - #60

Merged
jvsena42 merged 3 commits into
mainfrom
fix/outfit-selection-grid-ui
Aug 8, 2026
Merged

fix: improve the outfit selection grid UI#60
jvsena42 merged 3 commits into
mainfrom
fix/outfit-selection-grid-ui

Conversation

@jvsena42

@jvsena42 jvsena42 commented Aug 8, 2026

Copy link
Copy Markdown
Owner

Summary

The Create-outfit "Select items" grid drew each item's name on top of its photo with no line
limit, so on a 100dp cell a long name covered the whole garment and was unreadable either way
(see #44). The name is now gone from those cells — the cell is the photo, its border, and the
selection indicator. Each cell still exposes the item name as its content description /
accessibility label, so screen readers are unaffected.

While in the same class of bug, the wardrobe card's name was also unbounded: a four-line name pushed
its category row down and left the card misaligned with its neighbour in the grid row. It is now
capped at two lines.

Closes #44

Changes

  • CreateOutfitSheet.kt / .swift — remove the name label from SelectableItemCell; add an
    outfit_item_cell test tag / accessibility identifier so journeys can target the cells, matching
    the existing clothing_card and outfit_card
  • ClothingCard.kt / .swift — cap the item name at maxLines = 2 / .lineLimit(2) with tail
    truncation. No reserved second line, so one-line cards keep their current height
  • journeys/outfit-item-grid.xml — new journey covering photo-only cells and selection on tap
  • journeys/README.md — this is the one journey needing a populated wardrobe, so the fresh-install
    precondition note now defers to each journey's own description

Test plan

Verified on emulator-5554 (./gradlew :composeApp:assembleDebugandroid run --apks …), with a
wardrobe seeded so one item's name is long enough to have wrapped to four lines before the change.
All six actions of journeys/outfit-item-grid.xml PASSED:

  • Outfits tab → Create opens the sheet with the name field and "Select items" section
  • android layout / uiautomator dump: two outfit_item_cell nodes at [63,1821][360,2084] and
    [392,1821][689,2084] — 100dp tall, no child text nodes (the label is gone), each carrying
    the item name as its content-desc
  • Tapping the first cell shows "1 selected", a green border, and a filled check indicator
  • Wardrobe tab: the long name renders as two lines with an ellipsis (was four, unbounded); both
    cards' photos stay aligned

Checklist

  • ./gradlew detekt passes
  • Tested on Android
  • Tested on iOS — not built; this work happened on a Linux host, so the SwiftUI change is
    review-verified as a mirror of the Compose one. The iPhone/iPad #Previews need a run in
    Xcode before merging.
  • Updated documentation (if applicable) — journeys/README.md

🤖 Generated with Claude Code

jvsena42 and others added 3 commits August 8, 2026 09:20
The label was drawn on top of the garment photo, so on a 100dp cell it
sat over the image with no line limit — long names covered the whole
photo and were unreadable either way. The cell is now the photo alone;
each cell still exposes the item name as its content description /
accessibility label, so screen readers are unaffected.

Adds an outfit_item_cell test tag / accessibility identifier so journeys
can target the cells, matching clothing_card and outfit_card.

Closes #44

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
AI-generated names run long; unbounded, a four-line name pushed the
category row down and left the card misaligned with its neighbour in the
grid row.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Covers the Create-outfit selection grid: photo-only cells with no name
text over the garment, and selection on tap. Unlike the other journeys
it needs a populated wardrobe, so the fresh-install precondition note
now points at each journey's own description.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@jvsena42
jvsena42 enabled auto-merge August 8, 2026 12:21
@jvsena42
jvsena42 merged commit 169fc9f into main Aug 8, 2026
2 checks passed
@jvsena42
jvsena42 deleted the fix/outfit-selection-grid-ui branch August 8, 2026 12:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve outfit selection Grid UI

1 participant