mikebridge opened a new pull request, #44255:
URL: https://github.com/apache/superset/pull/44255

   ### SUMMARY
   
   The sc-119737 overflow fix (#43836) kept the dashboard version-history panel 
inside the viewport below the XXL breakpoint by pinning it `position: fixed` to 
the viewport at z-index 101. That made it a full-height right overlay anchored 
at the top of the screen: it covered the global Settings / + nav icons and the 
dashboard's **Share / Edit dashboard / ⋯** controls, and disagreed with the 
chart panel, which opens inside the Explore content area (found on the QA 
re-check of sc-119737; SC-120489).
   
   This mirrors Explore. There, below its breakpoint the panel is anchored 
absolutely inside the relatively-positioned content container, below the 
header. The grid equivalent used here: below XXL the panel column becomes an 
**absolutely-positioned grid item placed in the content cell** (`grid-column: 
2; grid-row: 2; top/right/bottom: 0`) — an absolutely-positioned grid item uses 
its grid *area* as containing block — so it overlays the content only, **adds 
no width to the grid (the overflow fix is preserved)**, and never covers the 
header row or the nav. It stacks at z-index 98, below the sticky header (99) 
and a maximized chart (102), so the header's controls stay visible and 
clickable. Because the dashboard page owns the scroll and the content cell is 
as tall as the dashboard, the panel itself (the `<aside>`) is sticky at the 
measured header height (`barTopOffset`, which the builder already tracks with a 
`ResizeObserver`), so it never slides under the header while scrolling.
   
   At and above XXL the panel stays an in-flow third column, now in the content 
row only rather than spanning the header row — the same below-the-header 
placement as Explore on every breakpoint. (If design would rather the wide 
layout keep the panel beside the header, that is a one-line `grid-row` change.)
   
   ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
   
   **Before** (QA screenshot from SC-120489, ~1440px): the panel as a viewport 
overlay covering the nav and the Share / Edit / ⋯ controls — 
https://media.app.shortcut.com/api/attachments/files/clubhouse-assets/5d8baaab-e1a8-4512-a9c7-12979c8cd1c9/6aa829f5-1bbb-4b7a-9492-260c73c73207/Screenshot%202026-09-14%20at%2014.07.49.png
   
   **After**: the panel opens inside the dashboard content area below the 
header; nav and dashboard controls remain in the document flow above it. 
(Screenshots at ~1280px and ~1446px to follow once captured against a running 
instance.)
   
   ### TESTING INSTRUCTIONS
   
   ```bash
   cd superset-frontend
   npm run test -- 
src/dashboard/components/DashboardBuilder/DashboardBuilder.test.tsx
   npm run test -- src/features/versionHistory/DashboardVersionHistory.test.tsx
   ```
   
   The new test (`mounts the version-history panel inside the dashboard content 
area, below the header, on every breakpoint`) asserts the column is inside the 
dashboard grid (not portaled to `document.body`), that the header precedes it 
in the document flow, and the style rules per breakpoint: `grid-row: 2` + 
`position: sticky` wide; `position: absolute` in column 2 at z-index 98 — never 
`fixed` — with the aside's sticky `top` equal to the measured header height 
below XXL. Verified red-first: reverting the narrow rules to the fixed overlay 
fails the test at the `position: absolute` assertion. The sc-119737 
closed-state `:empty` contract test is unchanged and still passes.
   
   Manual: with `VersionHistory` enabled, open a dashboard's version history at 
~1280px and ~1446px — the panel sits inside the content area below the header, 
the Settings / + icons and Share / Edit dashboard / ⋯ buttons are visible and 
clickable, nothing overflows horizontally, and scrolling the page keeps the 
panel in view below the header.
   
   No dashboard version-history Playwright spec exists to extend (the only 
spec, `version-history/activity-log.spec.ts`, drives the Explore panel).
   
   ### ADDITIONAL INFORMATION
   - [x] Has associated issue: SC-120489 (regression from SC-119737 / #43836)
   - [x] Required feature flags: `VersionHistory`
   - [x] Changes UI
   - [ ] Includes DB Migration (follow approval process in 
[SIP-59](https://github.com/apache/superset/issues/13351))
     - [ ] Migration is atomic, supports rollback & is backwards-compatible
     - [ ] Confirm DB migration upgrade and downgrade tested
     - [ ] Runtime estimates and downtime expectations provided
   - [ ] Introduces new feature or API
   - [ ] Removes existing feature or API
   
   This PR was developed with AI assistance (Claude Code); a human 
(@mikebridge) reviews before merge.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to