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',

Reply via email to