Skip to content

style: rounded the entries in the dense feed styles - #1289

Open
jl0277 wants to merge 2 commits into
spacecowboy:masterfrom
jl0277:style/compact-feed-rows
Open

jl0277 wants to merge 2 commits into
spacecowboy:masterfrom
jl0277:style/compact-feed-rows

Conversation

@jl0277

@jl0277 jl0277 commented Oct 24, 2026

Copy link
Copy Markdown
Contributor

Dense rows are inset, rounded and separated by a hairline gap of background instead of a drawn divider, and they sit on surfaceContainerLow - the same theme role ElevatedCard uses for its container - so a super compact row matches the compact card tone.

The first row is rounder, and only on its top corners: it is the entry the eye lands on, and rounding its bottom too would lift it out of the run.

Read entries are also dimmed a little further so the difference is legible at a glance in a dense list.

Spacings: 2 dp row gap, row inset at half the page margin, 5 dp corner radius and 15 dp for the first row.

What does this change?

Checklist

  • [Yes] Ran ./gradlew ktlintFormat and committed the result
  • [NA] If the Room schema changed: added a MIGRATION_N_N+1 in AppDatabase.kt
  • [NA] If the Room schema changed: added a migration test in app/src/androidTest/.../db/room/

Screenshots (if UI change)

Before (with refresh fix):
https://github.com/user-attachments/assets/c66ee528-d8a7-46e6-9383-53beab83caca

After:
https://github.com/user-attachments/assets/af91974e-0ac5-4d23-b336-2f78aa7497ed

Dense rows are inset, rounded and separated by a hairline gap of background
instead of a drawn divider, and they sit on surfaceContainerLow - the same
theme role ElevatedCard uses for its container - so a super compact row
matches the compact card tone.

The first row is rounder, and only on its top corners: it is the entry the
eye lands on, and rounding its bottom too would lift it out of the run.

Read entries are also dimmed a little further so the difference is legible at
a glance in a dense list.

Spacings: 2 dp row gap, row inset at half the page margin, 5 dp corner radius
and 15 dp for the first row.
@spacecowboy

Copy link
Copy Markdown
Owner

I'm not sure. I'd really like to hear from people that actually use these styles (I don't) what they prefer. Seems to me that this just adds extra whitespace which is kind of the opposite of the intention of these styles

@jl0277 jl0277 closed this Oct 24, 2026
The colour behind a swiped row was painted full-bleed under the row surface. A clip antialiases each draw inside it rather than the flattened result, so colour beneath the row still tinted the partially-covered corner pixels, leaving a hairline tracing the arcs.

Dense rows now paint the colour only in the strip the row has vacated. Card styles keep the full-bleed background, since their elevated container occludes it at rest.

The row outline is also extracted into a single itemShape so it is authored once, by the item root's clip, instead of being reproduced by the content as well.
@jl0277 jl0277 reopened this Oct 25, 2026

This branch has not been deployed

No deployments
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.

2 participants