This is an automated email from the ASF dual-hosted git repository. rusackas pushed a commit to branch mobile-dashboard-support in repository https://gitbox.apache.org/repos/asf/superset.git
commit a3124faebe950b097f9792f5e2693c5673dc1785 Author: Evan Rusackas <[email protected]> AuthorDate: Fri Jan 9 17:17:04 2026 -0800 feat(mobile): Simplify welcome page for mobile consumption mode - Hide Charts and Saved queries sections on mobile (< 768px) - Only show Recents and Dashboards for dashboard-focused experience - Hide + (add) buttons on mobile to prevent creation actions - Keep View All links and filter tabs accessible 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <[email protected]> --- superset-frontend/src/features/home/SubMenu.tsx | 5 +++ superset-frontend/src/pages/Home/index.tsx | 44 ++++++++++++++----------- 2 files changed, 30 insertions(+), 19 deletions(-) diff --git a/superset-frontend/src/features/home/SubMenu.tsx b/superset-frontend/src/features/home/SubMenu.tsx index 3af4e5df9a..73975f55e4 100644 --- a/superset-frontend/src/features/home/SubMenu.tsx +++ b/superset-frontend/src/features/home/SubMenu.tsx @@ -111,6 +111,11 @@ const StyledHeader = styled.div<{ backgroundColor?: string }>` position: relative; margin-left: ${({ theme }) => theme.sizeUnit * 2}px; } + + /* Hide add buttons (secondary style with icons) on mobile */ + .nav-right button.ant-btn-secondary { + display: none; + } } `; diff --git a/superset-frontend/src/pages/Home/index.tsx b/superset-frontend/src/pages/Home/index.tsx index 7596e34564..aa09c3dcd4 100644 --- a/superset-frontend/src/pages/Home/index.tsx +++ b/superset-frontend/src/pages/Home/index.tsx @@ -26,7 +26,7 @@ import { } from '@superset-ui/core'; import { styled } from '@apache-superset/core/ui'; import rison from 'rison'; -import { Collapse, ListViewCard } from '@superset-ui/core/components'; +import { Collapse, ListViewCard, Grid } from '@superset-ui/core/components'; import { User } from 'src/types/bootstrapTypes'; import { reject } from 'lodash'; import { @@ -147,6 +147,7 @@ export const LoadingCards = ({ cover }: LoadingProps) => ( ); function Welcome({ user, addDangerToast }: WelcomeProps) { + const { md: isNotMobile } = Grid.useBreakpoint(); const canReadSavedQueries = userHasPermission(user, 'SavedQuery', 'can_read'); const userid = user.userId; const id = userid!.toString(); // confident that user is not a guest user @@ -397,24 +398,29 @@ function Welcome({ user, addDangerToast }: WelcomeProps) { /> ), }, - { - key: 'charts', - label: t('Charts'), - children: - !chartData || isRecentActivityLoading ? ( - <LoadingCards cover={checked} /> - ) : ( - <ChartTable - showThumbnails={checked} - user={user} - mine={chartData} - otherTabData={activityData?.[TableTab.Other]} - otherTabFilters={otherTabFilters} - otherTabTitle={otherTabTitle} - /> - ), - }, - ...(canReadSavedQueries + // Hide Charts and Saved queries on mobile - consumption-only mode + ...(isNotMobile + ? [ + { + key: 'charts', + label: t('Charts'), + children: + !chartData || isRecentActivityLoading ? ( + <LoadingCards cover={checked} /> + ) : ( + <ChartTable + showThumbnails={checked} + user={user} + mine={chartData} + otherTabData={activityData?.[TableTab.Other]} + otherTabFilters={otherTabFilters} + otherTabTitle={otherTabTitle} + /> + ), + }, + ] + : []), + ...(isNotMobile && canReadSavedQueries ? [ { key: 'saved-queries',
