Skip to content

fix(frontend): stop rows showing through the pinned totals - #2500

Merged
dzarlax merged 1 commit into
constructorfabric:mainfrom
dzarlax:fix/opaque-pinned-totals
Aug 13, 2026
Merged

fix(frontend): stop rows showing through the pinned totals#2500
dzarlax merged 1 commit into
constructorfabric:mainfrom
dzarlax:fix/opaque-pinned-totals

Conversation

@dzarlax

@dzarlax dzarlax commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Follow-up to #2465, which pinned the totals to the foot of the box. The pinning worked; the surface under it did not.

What was wrong

TableFooter defaults to a half-transparent tint, and the value cells in the Total row carry no background of their own. Rows travelled visibly under the totals, and the two read as one smeared line.

Frosted was tried first and is not what this needs

The obvious treatment is a translucent panel with a backdrop blur, and it was built that way first. Looked at side by side at the same scroll offset, it is worse:

Treatment At a mid-scroll position
bg-muted/85 + backdrop-blur-md The row the footer covers shows through, sliced along its middle, directly under the totals
bg-muted Whole rows, then a clean edge, then the totals

A blurred panel keeps what is behind it visible — that is the whole idea of one — and what is behind this panel is the top sliver of a data row. The totals need the row behind them gone, not softened.

Verification

Compared in a browser at the same scroll offset on a table with real vertical overflow. The existing footer test gains an assertion that the background carries no opacity modifier, so a later "let's frost it" cannot quietly reintroduce the sliver. Unit suite green, typecheck and lint clean.

Summary by CodeRabbit

  • Bug Fixes
    • Improved the totals footer in metric time-series tables with an opaque muted background.
    • Prevented table rows from showing through the sticky totals area while scrolling.

The footer default is a half-transparent tint, and the value cells in
the Total row carry no background of their own, so rows travelled
visibly under the totals and the two read as one smeared line.

Made opaque rather than frosted. A blurred panel keeps the covered row
visible by design, and what shows through is its top sliver — a data
row sliced along its middle, directly under the totals. The totals need
the row behind them gone, not softened.

Signed-off-by: Alexey Panfilov <Alexey.Panfilov@constructor.tech>
@dzarlax
dzarlax requested a review from a team as a code owner August 13, 2026 08:19
@coderabbitai

coderabbitai Bot commented Aug 13, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 1d68b8de-a6d4-4a43-9608-798272960ce1

📥 Commits

Reviewing files that changed from the base of the PR and between c0043b9 and 8a21cf8.

📒 Files selected for processing (2)
  • src/frontend/src/components/widgets/metric-views/metric-timeseries-presentations.test.tsx
  • src/frontend/src/components/widgets/metric-views/metric-timeseries-table.tsx

📝 Walkthrough

Walkthrough

The sticky metric timeseries totals footer now uses an opaque muted background. The presentation test verifies the bg-muted class while preserving sticky positioning, stacking order, and the top border shadow.

Changes

Metric timeseries footer

Layer / File(s) Summary
Totals footer background and validation
src/frontend/src/components/widgets/metric-views/metric-timeseries-table.tsx, src/frontend/src/components/widgets/metric-views/metric-timeseries-presentations.test.tsx
The sticky totals footer applies bg-muted and retains its existing positioning and visual properties. The test verifies the background class.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Mergeability Score: ⚪ Minimal · up to 8a21c

The change makes pinned totals opaque so rows no longer show through beneath them, with a focused regression assertion; no actionable merge-blocking risk remains after normal checks and review.

Possibly related PRs

Suggested reviewers: aleksdotbar

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the fix for rows showing through the pinned totals footer.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@dzarlax
dzarlax enabled auto-merge August 13, 2026 08:24
@dzarlax
dzarlax added this pull request to the merge queue Aug 13, 2026
Merged via the queue into constructorfabric:main with commit d91d80e Aug 13, 2026
51 checks passed
@dzarlax
dzarlax deleted the fix/opaque-pinned-totals branch August 13, 2026 08:36
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