From 6c028944b4b2b9103f2a4b801ea81e842bdfd71f Mon Sep 17 00:00:00 2001 From: Andrew Hundt Date: Mon, 27 Oct 2025 17:20:54 -0400 Subject: [PATCH 1/2] fix: remove invalid .loose() method call in settings.ts --- sources/sync/settings.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/sync/settings.ts b/sources/sync/settings.ts index e0a9f2d285..0e73077e42 100644 --- a/sources/sync/settings.ts +++ b/sources/sync/settings.ts @@ -42,7 +42,7 @@ export const SettingsSchema = z.object({ // only touch the fields it knows about. // -const SettingsSchemaPartial = SettingsSchema.loose().partial(); +const SettingsSchemaPartial = SettingsSchema.partial(); export type Settings = z.infer; From 25fe661a1b8661c970045852d2627a320d22ab77 Mon Sep 17 00:00:00 2001 From: Andrew Hundt Date: Mon, 17 Nov 2025 03:32:34 -0500 Subject: [PATCH 2/2] SidebarView.tsx: add + button to header in large screen mode Previous behavior: - Narrow mode: + button in header top right - Large screen mode: + button missing from header row What changed: - Added Ionicons add-outline import (line 17) - Added + button Pressable after settings button (line 241) - Button positioned in rightContainer with inbox and settings - Routes to /new on press (creates new session) Why: Large screen users need header access to create new sessions, matching narrow mode UX pattern. Files affected: - sources/components/SidebarView.tsx: Added import and button in header Technical details: - Uses Ionicons add-outline size 28 (identical to narrow mode HomeHeader.tsx:128) - Reuses existing handleNewSession callback - 7 lines added (1 import, 6 button JSX) --- sources/components/SidebarView.tsx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sources/components/SidebarView.tsx b/sources/components/SidebarView.tsx index 321d165bbe..a32780d1ad 100644 --- a/sources/components/SidebarView.tsx +++ b/sources/components/SidebarView.tsx @@ -14,6 +14,7 @@ import { Image } from 'expo-image'; import { StyleSheet, useUnistyles } from 'react-native-unistyles'; import { t } from '@/text'; import { useInboxHasContent } from '@/hooks/useInboxHasContent'; +import { Ionicons } from '@expo/vector-icons'; const stylesheet = StyleSheet.create((theme, runtime) => ({ container: { @@ -237,6 +238,12 @@ export const SidebarView = React.memo(() => { tintColor={theme.colors.header.tint} /> + + + {t('sidebar.sessionsTitle')}