authorgravatar for me@pixp.ccAlex <me@pixp.cc> 2026-07-30 15:30:46-07:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2026-07-30 22:30:46+00:00
log605c2bb734bbebed0b19fc1ff6b514f41bd3659b
tree1a94c46fc89b29f20eff363c816563de6ad3445d
parentcb11a71d632e0fb9e7a1fe8c0a95f35583c9cf11
signature Signed by PGP key B5690EEEBB952194

fix(mobile): show the correct build channel in Android's Threads page header (#4861)


1 files changed, 7 insertions(+), 2 deletions(-)

apps/mobile/src/features/home/HomeHeader.tsx+7-2
......@@ -1,5 +1,6 @@
11import type { EnvironmentId, SidebarThreadSortOrder } from "@t3tools/contracts";
22import type { MenuAction } from "@react-native-menu/menu";
3import Constants from "expo-constants";
34import { NativeHeaderToolbar, NativeStackScreenOptions } from "../../native/StackHeader";
45import { useCallback, useMemo, useRef } from "react";
56import { Platform, Pressable, Text as RNText, TextInput, View } from "react-native";
......@@ -9,6 +10,8 @@ import { useSafeAreaInsets } from "react-native-safe-area-context";
910import { ControlPillMenu } from "../../components/ControlPill";
1011import { SymbolView } from "../../components/AppSymbol";
1112import { T3Wordmark } from "../../components/T3Wordmark";
13import { HOME_HORIZONTAL_INSET } from "../../lib/layoutMetrics";
14import { resolveMobileStageLabel } from "../../lib/mobileBranding";
1215import { useThemeColor } from "../../lib/useThemeColor";
1316import { useThreadListV2Enabled } from "../threads/use-thread-list-v2-enabled";
1417import { useHardwareKeyboardCommand } from "../keyboard/hardwareKeyboardCommands";
......@@ -64,6 +67,7 @@ function AndroidHomeHeader(props: HomeHeaderProps) {
6467 const insets = useSafeAreaInsets();
6568 const iconColor = useThemeColor("--color-icon");
6669 const mutedColor = useThemeColor("--color-foreground-muted");
70 const stageLabel = resolveMobileStageLabel(Constants.expoConfig?.extra?.appVariant);
6771 // Thread List v2 lays the list out in fixed creation order, so the
6872 // sort/group filter controls would be silently ignored — hide them and
6973 // key the "customized" icon state off the environment filter alone.
......@@ -195,8 +199,9 @@ function AndroidHomeHeader(props: HomeHeaderProps) {
195199 <>
196200 <NativeStackScreenOptions options={{ headerShown: false }} />
197201 <View
198 className="border-b border-header-border bg-header px-4 pb-3"
202 className="border-b border-header-border bg-header pb-3"
199203 style={{
204 paddingHorizontal: HOME_HORIZONTAL_INSET,
200205 paddingTop: Math.max(insets.top, 12),
201206 }}
202207 >
......@@ -210,7 +215,7 @@ function AndroidHomeHeader(props: HomeHeaderProps) {
210215 </RNText>
211216 <View className="rounded-full bg-subtle px-2 py-0.75">
212217 <RNText className="text-[11px] font-t3-bold tracking-[1.1px] text-foreground-muted uppercase">
213 Alpha
218 {stageLabel}
214219 </RNText>
215220 </View>
216221 </View>