justinpark opened a new pull request, #45495: URL: https://github.com/apache/superset/pull/45495
### SUMMARY Dashboard URLs track the selected tabs in an `active_tabs` query parameter. Copying the browser URL and reopening it restores top-level and nested tab selections together with the matching dashboard content. Explicit URL tab selections take precedence over permalink tab state, and tab IDs absent from the dashboard layout are ignored. Asynchronous native filter updates preserve the latest tab selections instead of overwriting them. ### BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF Before: reopening a copied dashboard URL could display the first tab's content, even when the selected tab header pointed to another tab. After: the tab headers and dashboard content restore the selected tabs, including nested tabs. ### TESTING INSTRUCTIONS 1. Open a dashboard containing top-level and nested tabs. 2. Select a non-default top-level tab and a non-default nested tab. 3. Copy the browser URL and open it in a new tab or reload it. Verify that both the selected headers and displayed content match the original selection. 4. Change native filters and switch tabs while the filter state is being saved. Reopen the URL and verify that the latest tab selections and filters are preserved. 5. Verify that chart-focused links still take precedence when choosing the displayed dashboard content, and that unknown tab IDs fall back safely. Validation: - Local webpack development build completed successfully with no TypeScript errors reported by its checker. - Browser verification confirmed the selected top-level and nested tabs display their corresponding content. - The active-tab hook, DashboardContainer, and DashboardPage Jest suites passed (23 tests). ### ADDITIONAL INFORMATION - [ ] 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 - [x] 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]
