gabotorresruiz opened a new pull request, #41439: URL: https://github.com/apache/superset/pull/41439
<!--- Please write the PR title following the conventions at https://www.conventionalcommits.org/en/v1.0.0/ Example: fix(dashboard): load charts correctly --> ### SUMMARY <!--- Describe the change below, including rationale and design decisions --> Restores page scrolling on dashboards: a dashboard taller than the browser window was clipped with no scrollbar, leaving every chart below the fold completely unreachable. The same change also restores the top navbar's hide-on-scroll behavior, which had been silently disabled across the entire app. Two independent regressions combined to cause this: **1. `@visx/responsive` 3.12.0 --> 4.0.0 (#41239)** In 4.0.0, the `<ParentSize>` component renders its children inside an absolutely-positioned, `overflow: hidden` wrapper (`position: absolute; inset: 0`). `DashboardContainer` renders the dashboard grid inside `<ParentSize>`, so any dashboard taller than the measured area was clipped and could no longer grow the document, removing the page scrollbar entirely. *Fix:* use the `useParentSize` hook instead of the `<ParentSize>` component, so the resize observer attaches to the grid container itself and the grid renders in normal document flow. We only ever consumed `width`, so behavior is otherwise identical. **2. Unconditional app-shell inner-scroll (#41205, SIP-214 chat panel)** The chat panel switched the app shell to a viewport-locked, inner-scroll layout (`height: 100vh; overflow: hidden` on the shell, `overflow-y: auto` on the content) **unconditionally**. That layout is only required for the chat panel's split view, but because it always applied, the navbar stopped hiding on scroll, even when no chat extension was present. *Fix:* scope the `viewport-locked/inner-scroll` shell to chat **panel** mode only. In every other state (no chat extension, chat closed, or chat in floating mode) the shell page-scrolls exactly as before, so the navbar hides on scroll again. The chat panel's split-view behavior is unchanged. ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF <!--- Skip this if not applicable --> **Before:** [screen-capture (6).webm](https://github.com/user-attachments/assets/853f07f1-37de-4486-9367-72e17f417df7) **After:** [screen-capture (5).webm](https://github.com/user-attachments/assets/81bddd42-60ba-466e-a500-211465e3f258) ### TESTING INSTRUCTIONS <!--- Required! What steps can be taken to manually verify the changes? --> Dashboard page-scroll (core fix): 1. Open a dashboard taller than the browser window (for example "FCC New Coder Survey 2018" from the bundled examples). 2. Scroll down. Expected: the whole page scrolls, every below-fold chart is reachable, the top navbar hides as you scroll, and the dashboard header stays pinned to the top. 3. Regression check: confirm Explore and SQL Lab still scroll/behave as before. Chat panel (only if `ENABLE_EXTENSIONS` is on and a chat extension is registered): 4. Open the chat in panel mode: the shell switches to split view, the navbar stays fixed, and the dashboard scrolls inside its panel next to the chat. Close it: page-scroll and navbar hide-on-scroll return. 5. Switch the chat to floating mode: the page scrolls normally (navbar hides) with the chat floating on top. ### ADDITIONAL INFORMATION <!--- Check any relevant boxes with "x" --> <!--- HINT: Include "Fixes #nnn" if you are fixing an existing issue --> - [ ] Has associated issue: - [ ] Required feature flags: - [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 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]
