| ... | ... | @@ -19,13 +19,14 @@ export type { HomeHeaderEnvironment } from "./HomeHeader.types"; |
| 19 | 19 | |
| 20 | 20 | export function HomeHeader(props: HomeHeaderProps) { |
| 21 | 21 | const navigation = useNavigation<NativeStackNavigationProp<ParamListBase>>(); |
| 22 | | const { panes, togglePrimarySidebar } = useAdaptiveWorkspaceLayout(); |
| 22 | const { layout, panes, togglePrimarySidebar } = useAdaptiveWorkspaceLayout(); |
| 23 | 23 | const usesNativeMailSearchToolbar = useNativeMailSearchToolbar(); |
| 24 | 24 | const primaryColumn = use(NativePrimaryColumnContext); |
| 25 | 25 | const sidebarHeader = |
| 26 | 26 | Platform.OS === "ios" && |
| 27 | 27 | primaryColumn !== null && |
| 28 | 28 | (Platform.isPad || !usesNativeMailSearchToolbar); |
| 29 | const showsCompactCompose = Platform.OS === "ios" && Platform.isPad && !layout.usesSplitView; |
| 29 | 30 | const searchBarRef = useRef<SearchBarCommands>(null); |
| 30 | 31 | const focusAfterReveal = useRef(false); |
| 31 | 32 | useEffect( |
| ... | ... | @@ -59,20 +60,35 @@ export function HomeHeader(props: HomeHeaderProps) { |
| 59 | 60 | return ( |
| 60 | 61 | <> |
| 61 | 62 | <NativeStackScreenOptions |
| 62 | | optionsVersion={filterMenu.items} |
| 63 | optionsVersion={[filterMenu.items, showsCompactCompose]} |
| 63 | 64 | options={{ |
| 64 | 65 | // Static header config (glass, title, fonts) lives in Stack.tsx |
| 65 | 66 | // (GLASS_HEADER_OPTIONS). Only dynamic values are set here. |
| 66 | 67 | headerTintColor: iconColor, |
| 67 | 68 | unstable_headerRightItems: () => |
| 68 | 69 | sidebarHeader |
| 69 | | ? createSidebarHeaderItems({ |
| 70 | | filterIcon: hasCustomListOptions |
| 71 | | ? "line.3.horizontal.decrease.circle.fill" |
| 72 | | : "line.3.horizontal.decrease.circle", |
| 73 | | filterMenu, |
| 74 | | onOpenSettings: props.onOpenSettings, |
| 75 | | }) |
| 70 | ? [ |
| 71 | ...createSidebarHeaderItems({ |
| 72 | filterIcon: hasCustomListOptions |
| 73 | ? "line.3.horizontal.decrease.circle.fill" |
| 74 | : "line.3.horizontal.decrease.circle", |
| 75 | filterMenu, |
| 76 | onOpenSettings: props.onOpenSettings, |
| 77 | }), |
| 78 | ...(showsCompactCompose |
| 79 | ? [ |
| 80 | withNativeGlassHeaderItem({ |
| 81 | accessibilityLabel: "New task", |
| 82 | axisBehavior: "horizontalOnly", |
| 83 | icon: { name: "square.and.pencil", type: "sfSymbol" } as const, |
| 84 | identifier: "home-new-task", |
| 85 | label: "", |
| 86 | onPress: props.onStartNewTask, |
| 87 | type: "button", |
| 88 | }), |
| 89 | ] |
| 90 | : []), |
| 91 | ] |
| 76 | 92 | : [ |
| 77 | 93 | withNativeGlassHeaderItem({ |
| 78 | 94 | accessibilityLabel: "Open settings", |