You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Any chat app in the market (in their desktop version) shows the chat content and its messages immediately when tapping on a chat row. On Sphinx V2 it takes a second or two (while it shows a shimmering loading view) until the content is loaded and presented.
Base branch: develop
Requirements
Improves logic and UI to present chat messages immediately when entering a chat from the chats list
Remove the need of a shimmering/loading view while the chat content is loading
Acceptance Criteria
Reduce load time to ~0 when entering a chat
Remove shimmering/loading view
Record a video with loom for review when task is completed
References and suggestions
NewChatTableDataSource+ResultsControllerExtension: In this file we have all the logic involved in fetching messages on a chat from the database, processing them and creating the MessageTableCellState objects array responsible of building the UI on each NSCollectionViewItem. The datasource will listen for changes on a query results, process them and run update on the snapshot that controls the collection.
Any way of cashing the MessageTableCellState array so it's available when entering the chat should improve load time significantly, making the fetch of the database to show updated information once the cached chat content is already displayed.
In addition the shimmering view is visible until the NSCollectionView loads its content and it's scrolled to bottom (the scroll offset change consumes time). A huge improvement would be to be able to invert the scroll y axis on a way where the first row (with index 0) would be the one at the very bottom and the initial position of the scroll (with offset 0) is at the bottom. This approach was implemented on iOS reducing the load time significantly, but seems complex and hard to be implemented in a MacOS project
The text was updated successfully, but these errors were encountered:
Any chat app in the market (in their desktop version) shows the chat content and its messages immediately when tapping on a chat row. On Sphinx V2 it takes a second or two (while it shows a shimmering loading view) until the content is loaded and presented.
Base branch: develop
Requirements
Acceptance Criteria
References and suggestions
NewChatTableDataSource+ResultsControllerExtension
: In this file we have all the logic involved in fetching messages on a chat from the database, processing them and creating theMessageTableCellState
objects array responsible of building the UI on each NSCollectionViewItem. The datasource will listen for changes on a query results, process them and run update on the snapshot that controls the collection.MessageTableCellState
array so it's available when entering the chat should improve load time significantly, making the fetch of the database to show updated information once the cached chat content is already displayed.The text was updated successfully, but these errors were encountered: