Files
goose/ui
spencrmartin e64db09e8e Fix Matrix tab persistence and real-time message handling
- Implement tab persistence to prevent component unmounting when switching tabs
- Remove key prop from BaseChat2 to maintain component state across tab switches
- Add conditional rendering for all tabs (visible/hidden instead of mount/unmount)
- Fix Matrix session ID consistency in TabContext.openMatrixChat
- Enhance ChatInput Matrix room detection with TabContext integration
- Add isTabActive prop to BaseChat2 for future optimizations
- Ensure Matrix connections persist when navigating between tabs
- Fix real-time message display in Matrix rooms when switching back to tabs
- Resolve notification suppression issues for multichat sessions
- Add extensive debugging logs for Matrix room detection and tab state

Key fixes:
* Matrix tabs no longer 'unmount' when switching away and back
* Real-time messages appear correctly in background Matrix tabs
* Notification suppression now works correctly with tab context
* Session ID format consistency (matrix_!roomId) maintained
* useSessionSharing connections persist across tab switches

This resolves the core issue where Matrix tabs would lose their state and
stop syncing messages after navigating to different tabs.
2025-11-21 09:18:27 -05:00
..