Repository navigation
Conversation
Author
|
@juliusmarminge This is the native prerequisite for the reproducible Duo navigation bug: expansion currently looks like a compact Back to the consumer until the late |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
On the iOS 27.1 RC1 Duo simulator, the split host reports
oneBesideSecondary → secondaryOnlywhile expanding, before the primary column appears and beforeonExpand. At that point UIKit still reportsisCollapsed = YES, although the host's current horizontal size class is regular. A consumer tracking only collapse/expand completion can therefore mistake expansion for a compact Back action and clear the selected thread.Expose the host's current
horizontalSizeClasson the existingonDisplayModeWillChangeevent. This is a prerequisite for the T3 navigation fix; the library change alone does not change navigation or toolbar placement. It adds no new event or delegate and does not change completion-event semantics.Changes
Pass the current host trait into the existing Fabric event as
compact,regular, orunspecified, and expose the same union in the public event type. No package-version bump or release archive is included.Test plan
Library TypeScript, scoped ESLint/Prettier, native formatting and Fabric code generation passed. A local test archive applied only this source change to the T3 app's existing t3.17 dependency, and the SDK 27.1 simulator native build passed.
LLDB confirmed regular traits with stale
isCollapsed = YESduring expansion, and compact traits during a real folded Back. A consumer using the payload passed two cycles of folded Back → select another thread → unfold → fold, with the selected thread visible throughout. The event trace showshorizontalSizeClass: regularbefore primary appearance during expansion; the router no longer pops there.Consumer evidence: main reproduces the hidden second selection; the companion consumer opens both selections. This is the same folded Duo, fixture and theme. The recordings demonstrate the native prerequisite together with the app router reconciliation, not a standalone library UI change.
Minimal consumer probe:
Open a thread while unfolded, fold, press Back, select another thread, and unfold. Inspect the expansion event before primary appearance; its size class should be
regular. Android does not implement this iOS split host. The final app dependency update must wait for a maintainer release/archive fromt3/main.Model: GPT-6.1 Sol | Harness: Codex in T3 Code