Skip to content

fix: add animation transition to chat message on mobile#41

Merged
sirily11 merged 1 commit into
mainfrom
navigation
May 21, 2026
Merged

fix: add animation transition to chat message on mobile#41
sirily11 merged 1 commit into
mainfrom
navigation

Conversation

@sirily11
Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings May 21, 2026 10:40
@vercel
Copy link
Copy Markdown

vercel Bot commented May 21, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
rxcode Ready Ready Preview, Comment May 21, 2026 10:40am

Request Review

@autopilot-project-manager autopilot-project-manager Bot added the bug Something isn't working label May 21, 2026
@sirily11 sirily11 merged commit 4f5fc26 into main May 21, 2026
9 checks passed
@sirily11 sirily11 deleted the navigation branch May 21, 2026 10:43
@sirily11
Copy link
Copy Markdown
Contributor Author

🎉 This PR is included in version 1.9.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the mobile chat experience by adding a dedicated “thread loading” overlay (with animated skeleton UI) and adjusting navigation so the Briefing tab’s chat can be dismissed/popped correctly while preserving smoother transitions on iPhone.

Changes:

  • Add MobileThreadLoadingOverlay and show it in MobileChatView with an animated transition while a thread’s initial messages refresh.
  • Track per-session “initial thread messages loading” state in MobileAppState (loadingThreadMessageSessions) and clear it when initial snapshots arrive.
  • Refine iPhone Briefing navigation to use a path-bound NavigationStack and introduce a helper to avoid unwanted cross-navigation when already in briefing detail.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
RxCodeMobile/Views/RootView.swift Uses a path-bound briefing NavigationStack, wires a close callback through Briefing → Chat, and refines “open active session” gating.
RxCodeMobile/Views/MobileThreadLoadingOverlay.swift New SwiftUI loading overlay with animated skeleton placeholders and reduce-motion support.
RxCodeMobile/Views/MobileChatView.swift Shows the new loading overlay with transitions and adds a 1s minimum display gate.
RxCodeMobile/Views/MobileBriefingView.swift Passes a close callback into MobileChatView when opened from Briefing and hides the tab bar in chat.
RxCodeMobile/State/MobileAppState+Intents.swift Adds isLoadingThreadMessages, updates subscribe flow to set/clear loading state, and clears loading state on archive/delete.
RxCodeMobile/State/MobileAppState+Inbound.swift Clears/renames loading state when snapshots arrive or session IDs change.
RxCodeMobile/State/MobileAppState.swift Adds new published set tracking sessions whose initial message window is still loading.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Published var loadingMoreSessions: Set<String> = []
/// Sessions whose initial message page is being refreshed after opening the
/// chat detail view.
@Published var loadingThreadMessageSessions: Set<String> = []
Comment on lines 375 to 377
/// view is driven by `selectedSession`. Keeping the two mechanisms separate
/// avoids pushing the same chat page twice.
private func navigate(toSession sessionID: String, projectID: UUID?) {
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants