Repository navigation
fix/state management connection glitches - #129
matheusfillipe merged 2 commits into
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the
📝 WalkthroughWalkthroughThis PR introduces mobile swipe navigation, extends store APIs with away status and navigation options, implements a new localStorage persistence layer with migrations, adds new UI components (HeaderOverflowMenu, TopicModal, LoadingOverlay), refactors AppLayout for narrow view support, and enhances IRC client functionality with deterministic IDs, rate limiting, and away command support. Changes
Sequence DiagramsequenceDiagram
participant User as User
participant AppLayout as AppLayout
participant TouchState as Touch Handler
participant SwipeNav as useSwipeNavigation
participant Store as Store
participant Render as Component Render
User->>AppLayout: Touch screen (swipe)
AppLayout->>TouchState: handleTouchStart
TouchState->>SwipeNav: recordTouchStart position
User->>AppLayout: Drag finger
AppLayout->>TouchState: handleTouchMove (repeated)
TouchState->>SwipeNav: calculateDrag offset & direction
SwipeNav->>Render: Update offset via ref
Render->>Render: Visual drag feedback
User->>AppLayout: Release finger
AppLayout->>TouchState: handleTouchEnd
TouchState->>SwipeNav: Evaluate swipe magnitude vs threshold
alt Swipe exceeds threshold
SwipeNav->>SwipeNav: Calculate page change
SwipeNav->>Store: Call onPageChange(newPage)
Store->>Store: Update mobileViewActiveColumn
SwipeNav->>Render: Trigger 300ms transition
Render->>Render: Animate to new page position
else Below threshold
SwipeNav->>SwipeNav: Reset offset to 0
Render->>Render: Snap back to current page
end
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Automated deployment preview for the PR in the Cloudflare Pages. |
* minor state fixes and ensure entering channel from channel list modal * Simplify add server button * improve header for mobile * hmmm dark background is better honestly * add server channels button to blank server page * Use loading spinner for server connection * swipe left and right for mobile pages * fix typescript build errors * 08:49 < user379> the three-dots menu when on a narrow screen doesn't open any menu * 08:49 < user379> "Account settings are only available in hosted chat mode." 08:49 < user379> what 08:49 < Valware> why though 08:49 < Valware> =] * 08:49 < Valware> also none of the ircs:// are able to be reconnected to when I close and reopen the app * avoid auto entering channels on mobile width * small fix for menus * many fixes * update biome * fix state messup when resizing * fix sidebars shadow effect * Fix scroll detection * Fix state handling on app opening * keep server order * Fix drag in member list * fix: Realname is not metadata * bring away and quit messages back * add away and back commands * refactor * fix/state management connection glitches (#129) * fix some state and connection glitches and debounce connections * make + smaller * Fix sidebar/pages states on resize and add more coverage * fix scroll * prevent overshooting swipe
* minor state fixes and ensure entering channel from channel list modal * Simplify add server button * improve header for mobile * hmmm dark background is better honestly * add server channels button to blank server page * Use loading spinner for server connection * swipe left and right for mobile pages * fix typescript build errors * 08:49 < user379> the three-dots menu when on a narrow screen doesn't open any menu * 08:49 < user379> "Account settings are only available in hosted chat mode." 08:49 < user379> what 08:49 < Valware> why though 08:49 < Valware> =] * 08:49 < Valware> also none of the ircs:// are able to be reconnected to when I close and reopen the app * avoid auto entering channels on mobile width * small fix for menus * many fixes * update biome * fix state messup when resizing * fix sidebars shadow effect * Fix scroll detection * Fix state handling on app opening * keep server order * Fix drag in member list * fix: Realname is not metadata * bring away and quit messages back * add away and back commands * refactor * fix/state management connection glitches (obbyworld#129) * fix some state and connection glitches and debounce connections * make + smaller * Fix sidebar/pages states on resize and add more coverage * fix scroll * prevent overshooting swipe
Summary by CodeRabbit
Release Notes
New Features
Improvements
✏️ Tip: You can customize this high-level summary in your review settings.