diff --git a/src/pages/secondary/GeneralSettingsPage/index.tsx b/src/pages/secondary/GeneralSettingsPage/index.tsx index f4a9059..1004131 100644 --- a/src/pages/secondary/GeneralSettingsPage/index.tsx +++ b/src/pages/secondary/GeneralSettingsPage/index.tsx @@ -6,6 +6,7 @@ import { LocalizedLanguageNames, TLanguage } from '@/i18n' import SecondaryPageLayout from '@/layouts/SecondaryPageLayout' import { cn, isSupportCheckConnectionType } from '@/lib/utils' import { useContentPolicy } from '@/providers/ContentPolicyProvider' +import { useScreenSize } from '@/providers/ScreenSizeProvider' import { useTheme } from '@/providers/ThemeProvider' import { useUserPreferences } from '@/providers/UserPreferencesProvider' import { useUserTrust } from '@/providers/UserTrustProvider' @@ -19,6 +20,7 @@ const GeneralSettingsPage = forwardRef(({ index, hideTitlebar = false }: { index const { t, i18n } = useTranslation() const [language, setLanguage] = useState(i18n.language as TLanguage) const { themeSetting, setThemeSetting } = useTheme() + const { isSmallScreen } = useScreenSize() const { autoplay, setAutoplay, @@ -151,19 +153,21 @@ const GeneralSettingsPage = forwardRef(({ index, hideTitlebar = false }: { index - - - - + {!isSmallScreen && ( + + + + + )}
{ + const handleResize = () => { + const isMobile = window.innerWidth <= 768 + if (isMobile && !showRecommendedRelaysPanel) { + setShowRecommendedRelaysPanel(true) + storage.setShowRecommendedRelaysPanel(true) + } + } + + // Check on mount and on resize + handleResize() + window.addEventListener('resize', handleResize) + return () => window.removeEventListener('resize', handleResize) + }, [showRecommendedRelaysPanel]) const updateNotificationListStyle = (style: TNotificationStyle) => { setNotificationListStyle(style) @@ -33,6 +49,11 @@ export function UserPreferencesProvider({ children }: { children: React.ReactNod } const updateShowRecommendedRelaysPanel = (show: boolean) => { + // Don't allow turning off the panel on mobile + const isMobile = window.innerWidth <= 768 + if (isMobile && !show) { + return + } setShowRecommendedRelaysPanel(show) storage.setShowRecommendedRelaysPanel(show) }