fix(mobile): Apply native header options only while focused#5

draft1
contrib/main/message-copy-fences
contrib/main/mobile-focused-headers
openedSep 27, 2026byMMike Olson
View on GitHubTwo-way sync enabledPR last imported 7h ago

What Changed

Screens on the mobile app now update their native navigation header only while they are the focused screen. A screen that changes its header options while hidden applies them when it regains focus, and every return to a screen reapplies its current header once. Caller-provided listeners such as blur cleanup keep working, and all listeners are removed on unmount.

Why

Hidden screens could call into native navigation during a push or pop. On iOS that produced "Unbalanced calls to begin/end appearance transitions" and left the Home list painted but unresponsive to taps. Limiting header writes to the focused screen removes that re-entry without remounting the navigator.

Checklist

  • This PR is small and focused
  • I explained what changed and why
  • I included before/after screenshots for any UI changes
  • I included a video for animation/interaction changes

Added 1 commit

  • fix(mobile): Apply native header options only while focused48b48ce