Skip to content

fix(reports): pack reset layout by row height to stop tile overlap#85

Merged
WhiteMuush merged 2 commits into
mainfrom
fix/report-reset-overlap
Jun 22, 2026
Merged

fix(reports): pack reset layout by row height to stop tile overlap#85
WhiteMuush merged 2 commits into
mainfrom
fix/report-reset-overlap

Conversation

@WhiteMuush

Copy link
Copy Markdown
Owner

Problem

On the Reports page, clicking Reset while customizing restored the default
section positions, but tiles overlapped and shoved each other around, with wrong
sizes.

Cause

buildDefaultLayout advanced each grid row by a fixed DEFAULT_H (5 rows), but
tiles auto-grow to their content height via fitHeights. A section taller than 5
rows overlapped the next row, and the RGL compactor reshuffled everything. Reset
also cleared minHeights, so heights collapsed to defaults before re-measuring,
amplifying the jump.

Fix

  • Pack default-layout rows by the tallest tile in each row (variable row height),
    so growing a tile never overlaps the next row.
  • Seed Reset with the already-measured minHeights instead of clearing them,
    removing the collapse-then-regrow flicker.

Verification

npx tsc --noEmit clean. Manual: Reports > Customize > drag/resize > Reset, tiles
snap to defaults cleanly with no jumping.

🤖 Generated with Claude Code

buildDefaultLayout advanced each row by a fixed DEFAULT_H, so sections
whose content auto-grows past 5 rows overlapped the next row and RGL's
compactor shoved tiles around on Reset. Pack rows by their tallest tile
and seed reset with already-measured heights instead of clearing them.
@WhiteMuush WhiteMuush merged commit d6dacfd into main Jun 22, 2026
11 checks passed
@WhiteMuush WhiteMuush deleted the fix/report-reset-overlap branch June 22, 2026 14:24
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.

1 participant