Skip to content

Show loading spinner by All Rooms title above the rooms list #509

@kevinaboos

Description

@kevinaboos

Problem

It's not always clear when the matrix SDK is still running an initial synchronization process. This happens most often when you first start Robrix, or when you hide it and resume it on a mobile device.

Solution

To remedy this, we should show a visual indicator of matrix synchronization, i.e., a loading spinner. This should be placed directly to the right of the All Rooms title label.

The Matrix SDK offers a sync indicator function that allows an async task to subscribe to and handle a stream of changes to the sync indicator. We should use this function to determine when to send an Action to the RoomsSidebar widget, in order to instruct that widget to show or hide the loading spinner.

Note: currently the RoomsSidebar is just a simple view, so we'll need to make it into a basic deref View widget too.

Desired Behavior

When hovering over or long-pressing on the loading spinner, we should display a tooltip explaining what that loading spinner represents: that a background sync is occurring, meaning that rooms and their latest state are still being loaded.

Metadata

Metadata

Assignees

Labels

help wantedLooking for help from anyone!
No fields configured for Feature.

Projects

Status
Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions