EnxDev commented on code in PR #43940:
URL: https://github.com/apache/superset/pull/43940#discussion_r3966432396
##########
superset-frontend/src/dashboard/components/DashboardBuilder/DashboardBuilder.tsx:
##########
@@ -774,6 +776,17 @@ const DashboardBuilder = () => {
? theme.sizeUnit * 4
: theme.sizeUnit * 8;
+ // Tab bars nested in the grid pin just below the sticky header while the
+ // page scrolls. Not in the mobile viewport, where the header scrolls away
+ // and the mobile styling pins tab bars on its own; not in report mode,
+ // whose tiled screenshots scroll the page and would capture a pinned bar
+ // in every tile; and not while a chart is maximized, which sits inside its
+ // own stacking context and must not be covered by a pinned bar.
+ // (TabsRenderer itself opts out while editing, since drop targets rely on
+ // document flow.)
+ const stickyTabsOffset =
+ isMobileViewport || isReport || fullSizeChartId ? undefined : barTopOffset;
Review Comment:
The desktop path stacks nested bars, but this disables that offset
propagation on mobile while the mobile CSS in `TabsRenderer` gives every
`.ant-tabs-nav` `top: 0`. On a dashboard with nested tab sets, the parent and
child bars therefore become sticky at the same viewport position, and the inner
bar covers the parent once it reaches the top. Could we keep propagating
measured bar heights on mobile (starting from the mobile top-level bar's
height), or add an equivalent mobile-specific offset path? A narrow-viewport
nested-tabs test would help pin down the expected stacking.
--
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]