Skip to content

fix(webkit): give table cells block padding so tall content can breathe - #899

Open
gabriel-lisboa-azion wants to merge 1 commit into
mainfrom
fix/table-cell-block-padding
Open

fix(webkit): give table cells block padding so tall content can breathe#899
gabriel-lisboa-azion wants to merge 1 commit into
mainfrom
fix/table-cell-block-padding

Conversation

@gabriel-lisboa-azion

Copy link
Copy Markdown
Collaborator

Summary

  • TableCell had horizontal padding only, so its height came from min-h-12 alone. Adds py-(--spacing-xs).
  • No change to any existing row. A single-line cell is decided entirely by the 48px minimum against ~20px of text, so the block padding is invisible there.
  • It only shows on a cell whose content is taller than the minimum — a wrapped list of tags, a two-line summary — where the first and last lines were flush against the row borders.

How to test

  1. cd packages/webkit && npx vitest run src/components/data/table → passes.
  2. pnpm storybook:dev → Components/Data/Table. Existing stories are pixel-identical (row height still 48px). In a cell with wrapped content (multiple tags), the content no longer touches the row border above and below.

Notes

  • Visual-only; no prop, event, or slot change.

@gabriel-lisboa-azion
gabriel-lisboa-azion requested a review from a team as a code owner August 17, 2026 09:49
gabriel-lisboa-azion added a commit that referenced this pull request Aug 17, 2026
Brings the three commits demo lacked, so the deployed sample exercises them
alongside the four fixes carved out of this branch (#899#902), whose content was
already here:

  - feat(webkit): chip's three kinds (#883)
  - feat(theme): the semantic/layouts container system (#884)
  - feat(theme): lightened heading and body type (#876)

Conflict resolutions worth knowing:

`build-tokens.mjs` — main has no illustration tokens, so main's side of all six
hunks was empty. Taking it would have silently deleted this branch's illustration
wiring; ours was kept. The merge then produced a DUPLICATE `emitUtilities` and
`emitLayoutUtilities` with no conflict at all (both sides had added an identical
helper in different places), which is a syntax error the merge itself reported as
clean — the second copy is removed and `emitIllustrationUtilities` reuses the
first.

`texts.data.js` — the five conflicts were all `text-body-*` weight, resolved to
main's `light` since that is the change being previewed. Resolved in place rather
than with `--theirs`, which would have discarded the file's auto-merged hunks.
Entry count held at 144.

`.size-limit.json` — union, not a side: main's `chip` plus this branch's
`footer-root` and `resizable-panel-root`.

`dist/v4/globals.*` are generated, so they were rebuilt from the merged sources
rather than hand-merged. The 466 conflicting visual baselines took main's copies;
neither side is valid for a merged tree, and this branch opens no PR the visual
gate guards.

Verified after: no `undefined` in the built CSS, illustration tokens still emitted,
main's layout utilities present, body weights now 300, no token data file lost
entries, and 154 tests pass across toast, table, sidebar, resizable-panel and chip.
A cell was `min-h-12` with horizontal padding only. For a single-line cell that
is invisible — the 48px minimum decides the height on its own against ~20px of
text — so every existing row renders exactly as before.

It only shows on a cell whose content is TALLER than the minimum: a wrapped list
of tags, a two-line summary. There the height came from the content alone, which
put the first and last lines flush against the row's borders with no breathing
room at all.
@gabriel-lisboa-azion
gabriel-lisboa-azion force-pushed the fix/table-cell-block-padding branch from b79d48b to ab606ff Compare August 17, 2026 12:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant