project-robius / project-robius/robrix

Make invited room behavior prettier and sleeker

Open
#592 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

good first issue help wanted
Dominant language
Rust
Stars
487
Forks
68
Avg merge
1h 22m
Merged PRs (30d)
54

Description

Although the room InviteScreen is fully functional and works properly, there are still some ways we could make it a bit nicer looking and sleeker.

  • Upon showing the InviteScreen (in set_displayed_invite()), change the join button icon to an "enter room" icon, and set the button as enabled and the button text to be "Join room".
  • Once the join button has been clicked, change the icon to a loading spinner and the text to "Joining...".
    • This will require a special button type that can show other non-icon content. Alternatively, we could hide the button temporarily and just show a LoadingSpinner with a background frame that looks like a disabled button... that might be easier.
  • Once the JoinRoomResultAction::Joined has been received, change the button icon to a green checkmark: " ✅ Joined!"
  • Close rooms when they are successfully Left.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the InviteScreen flow at set_displayed_invite() and the handling of JoinRoomResultAction::Joined. Read src/app.rs around lines 536-593 for the existing room-closing behavior after navigation. Done means the invite button shows the requested enabled, loading, and joined states, and successfully left rooms close as specified.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.