From 16cae4170bb8fd3fac79d27be53140610da8ba51 Mon Sep 17 00:00:00 2001 From: Pixel Perfect Date: Fri, 25 Sep 2026 10:41:00 -0700 Subject: [PATCH] fix(mobile): preserve iPad search chrome across layout changes --- apps/mobile/src/features/home/HomeRouteScreen.tsx | 10 +++++++++- .../src/features/layout/AdaptiveWorkspaceLayout.tsx | 4 +++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/mobile/src/features/home/HomeRouteScreen.tsx b/apps/mobile/src/features/home/HomeRouteScreen.tsx index cd8af281c9f5..178850752619 100644 --- a/apps/mobile/src/features/home/HomeRouteScreen.tsx +++ b/apps/mobile/src/features/home/HomeRouteScreen.tsx @@ -141,7 +141,15 @@ export function HomeRouteScreen() { options={ Platform.OS === "android" ? { headerShown: false } - : { title: "", headerTitle: "", unstable_headerLeftItems: () => [] } + : { + title: "", + headerTitle: "", + unstable_headerLeftItems: () => [], + // Options survive layout changes; search and settings now belong to the sidebar. + headerSearchBarOptions: undefined, + unstable_headerRightItems: () => [], + unstable_headerToolbarItems: () => [], + } } /> {Platform.OS === "ios" ? ( diff --git a/apps/mobile/src/features/layout/AdaptiveWorkspaceLayout.tsx b/apps/mobile/src/features/layout/AdaptiveWorkspaceLayout.tsx index ee2574fcee04..5fbe3257c1c3 100644 --- a/apps/mobile/src/features/layout/AdaptiveWorkspaceLayout.tsx +++ b/apps/mobile/src/features/layout/AdaptiveWorkspaceLayout.tsx @@ -495,7 +495,9 @@ function AdaptiveWorkspaceLayoutContent( renderedSidebarWidth, ]); const sidebarAnimatedStyle = useAnimatedStyle(() => ({ - opacity: Math.min(1, renderedSidebarWidth.value / 80), + // Fading a UIKit glass ancestor can leave remounted header effects missing. + // The clipped width already reveals and hides the iOS sidebar. + opacity: Platform.OS === "ios" ? 1 : Math.min(1, renderedSidebarWidth.value / 80), width: renderedSidebarWidth.value, }));