diff --git a/app/[locale]/page.tsx b/app/[locale]/page.tsx index 504e194f..c36f366b 100644 --- a/app/[locale]/page.tsx +++ b/app/[locale]/page.tsx @@ -203,7 +203,7 @@ export default function Home() { // Mobile/tablet responsive hooks const { isMobile, isTablet } = useDeviceDetection(); - const { activeView, sidebarOpen, setSidebarOpen, setActiveView, tabletListVisible, setTabletListVisible, sidebarWidth, emailListWidth, setSidebarWidth, setEmailListWidth, persistColumnWidths, sidebarCollapsed, resetSidebarWidth, resetEmailListWidth } = useUIStore(); + const { activeView, sidebarOpen, setSidebarOpen, setActiveView, tabletListVisible, setTabletListVisible, sidebarWidth, emailListWidth, emailListHeight, setSidebarWidth, setEmailListWidth, setEmailListHeight, persistColumnWidths, sidebarCollapsed, resetSidebarWidth, resetEmailListWidth, resetEmailListHeight } = useUIStore(); const { emails, mailboxes, @@ -637,6 +637,7 @@ export default function Home() { const parsed = JSON.parse(stored); if (parsed.sidebarWidth) setSidebarWidth(parsed.sidebarWidth); if (parsed.emailListWidth) setEmailListWidth(parsed.emailListWidth); + if (parsed.emailListHeight) setEmailListHeight(parsed.emailListHeight); } } catch { /* ignore parse errors */ } // eslint-disable-next-line react-hooks/exhaustive-deps @@ -1713,9 +1714,11 @@ export default function Home() { // Get current mailbox name for mobile header const currentMailboxName = mailboxes.find(m => m.id === selectedMailbox)?.name || "Inbox"; const isFocusedMailLayout = mailLayout === 'focus'; + const isHorizontalMailLayout = mailLayout === 'horizontal' && !isMobile && !isTablet; const hasViewerContent = showComposer || Boolean(conversationThread) || Boolean(selectedEmail); const shouldCollapseListPane = (isTablet && !tabletListVisible) || (!isMobile && isFocusedMailLayout && hasViewerContent); const shouldHideViewerPane = !isMobile && isFocusedMailLayout && !hasViewerContent; + const shouldHideHorizontalViewerPane = isHorizontalMailLayout && !hasViewerContent; // Handle email selection with mobile view switching const handleEmailSelect = async (email: { id: string }) => { @@ -1974,21 +1977,30 @@ export default function Home() { {/* Main Content Area */}
-
- {/* Email List - full width on mobile, fixed width on tablet/desktop */} +
+ {/* Email List - full width on mobile, fixed width/height on tablet/desktop */}