element-hq / element-hq/element-web

Navigating room list using keyboard requires up-down-up-down pattern

Open
#34,125 0 comments 0 reactions 0 assignees View on GitHub
A-Room-List O-Occasional S-Minor T-Defect Z-ProductPolish
Dominant language
TypeScript
Stars
13.5k
Forks
2.8k
PR merge metrics
PR metrics pending

Description

### Steps to reproduce

1. Start in a room, with the room list sorted by "Unread first"
2. Select the top room in a section
3. Navigate to the next room by pressing Alt and the downward arrow button
4. Note that the room you were in, which is now read, disappears. This is correct, because it is no longer unread.
5. Note that the selected room is the second in the list, and an unread room has jumped above the selected room.

This video shows me using keyboard shortcuts to navigate the room list (apologies for the blurring to hide room names).

I have to press down, up, down, up in order to work my way down the room list.

https://github.com/user-attachments/assets/7932ec2e-2715-4491-8269-281338e2647c

### Outcome

#### What did you expect?

I expected the selected room to jump to the top of the list, so when I press Alt+downarrow again, I see the next unread room.

#### What happened instead?

Instead, the selected room stays where it is, and I have to press Alt-uparrow to go to the next unread room.

This means to work my way down the list I have to press down, up, down, up. This feels unnatural.

### Operating system

_No response_

### Browser information

_No response_

### URL for webapp

_No response_

### Application version

Element version: 78273c569b26-js-171029678727 Crypto version: Rust SDK 0.18.0 (6fe03c1), Vodozemac 0.10.0

### Homeserver

_No response_

### Will you send logs?

No

Contributor guide

Open the contributing guide

Research direction

Start by tracing the room-list keyboard navigation for Alt+down and Alt+up while the list is sorted by "Unread first." Reproduce the room disappearing after it becomes read, then verify that the selected room moves to the top and that repeated downward navigation reaches the next unread room.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
accessibility, frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.