feat(rooms-list): render rooms list with Legend List - #7739
diegolmello wants to merge 2 commits into
Conversation
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (1)
Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 7 remain after this review. 📜 Recent review details⏰ Context from checks skipped due to timeout. (2)
🔇 Additional comments (1)
WalkthroughThe rooms list replaces React Native’s ChangesRooms list migration
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Refactor Suggested labels: Suggested reviewers: Merge Risk: ⚪ Minimal · up to The rooms list now uses LegendList with sizing that matches its rendered rows, while preference changes still refresh items. No material user-facing regression was established; the change is ready for normal merge checks. Security Architecture ReviewSecurity architecture risk: 🔵 Low · up to The migration preserves existing room selection, navigation, and access-related checks. No introduced security flaw is demonstrated, but isolation of each room’s interaction state depends on library recycling behavior that has not been verified. Retained concerns Security review detailsSecurity Blast Radius
Trust Boundaries and Controls
Resilience and Maintainability Implications
Hardening Proposals
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Warning Errors were encountered while retrieving linked issues. Errors (1)
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 |
|
iOS Build Available Rocket.Chat 4.77.0.109801 |
|
Android Build Available Rocket.Chat 4.77.0.109800 Internal App Sharing: https://play.google.com/apps/test/RQQ8k09hlnQ/ahAO29uNSrtq5sEIcqABhFIBNdCrgH3qEgxmL_1Md7K-s-0zMgx2BmFHKy0jC8jvKdKIpcW-26pz-bygmVf6pu74xJ |
332e2ce to
14d846b
Compare
3c59091 to
a0d6c8c
Compare
|
Android Build Available Rocket.Chat 4.78.0.109837 Internal App Sharing: https://play.google.com/apps/test/RQQ8k09hlnQ/ahAO29uNRJzWgO5t-nROPmxyHEVg_X4SxQrR-Mo971eiBTGfQlV722ET6ztXU5ws7G3TUuKZ-rsPyJQGO5o55AMbFg |
|
iOS Build Available Rocket.Chat 4.78.0.109846 |
|
Verified 04846fa on an iOS 27 simulator (iPhone 18 Pro), logged in to a test workspace.
Outcome: pass. Rows re-render on every display preference change, and room taps open the tapped room. 04846fa-small.mp4 |
|
Android Build Available Rocket.Chat 4.78.0.109852 Internal App Sharing: https://play.google.com/apps/test/RQQ8k09hlnQ/ahAO29uNT1qvUmtqNLIppqHTQcl0LELPBXuhiQTsptgwimsJQS4F15ICnvH5-UH7cPv3fz6TYQ7-DCzHjUzIMi4YoB |
|
iOS Build Available Rocket.Chat 4.78.0.109853 |
Proposed changes
Renders the rooms list with Legend List (
@legendapp/list3.4.0) instead ofFlatList.getFixedItemSize(regular or condensed height, depending on the display mode). Section separators are measured.getItemTypetells separators and rooms apart.initialNumToRender,windowSize,onEndReachedThreshold,getItemLayout.Profiled on an iOS simulator (dev build) with the same scroll each run: 3 flings down, 2 up.
Average and slowest commit durations didn't change.
Issue(s)
No ticket.
How to test or reproduce
Screenshots
Types of changes
Checklist
Further comments
Checked on an iOS simulator: scrolling, the header row, pull to refresh, swipe actions, opening a room and going back, and search. Not tested on Android yet.
Summary by CodeRabbit