Channel Sidebar (UI)

From Revolt Wiki
Revision as of 13:54, 15 January 2023 by Insert (Sọ̀rọ̀ | contribs) (→‎Server Sidebar)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

The channel sidebar currently has two different states, "conversations" and "viewing server".

Conversations Sidebar

Conversations in Revite

The conversations sidebar shows a short navigation menu to:

With a list of direct messages below (descending order by last message ID with a fallback to channel ID).





Server Sidebar

Server Sidebar in Revolt Frontend

The server sidebar is composed of the server banner with the title on top, and a list of categories and channels below.

Categories may be collapsed, and continue to show the active channels when collapsed.

Ordered Channels Algorithm

  1. Initialise a set U of uncategorised channel IDs from server channels the client may access.
  2. Initialise an empty list of categories C
  3. If server.categories are defined, for each category:
    1. Remove all the channels defined in the category from set U
    2. Add category to list C
  4. If the set U is not empty:
    1. Find the "default" category if it exists in C
    2. Merge the "default" category channels if they exist with and preceding the set U
    3. Create a category with id="default" and add it to the start of the list C if it does not exist
  5. Return the list C