element-hq / element-hq/element-web

Room List: [Regression] "Find in Page" no longer works for the full room list

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

Description

### Steps to reproduce

With the previous room list design, it was possible to use a browser's **Find in Page** feature (e.g. in Firefox via `Ctrl/Cmd+F`) to quickly locate a room or person and jump directly to that channel. This was especially useful when navigating a workspace with a large number of active rooms.

With the new room list design, this no longer works. When using **Find in Page** in Firefox, only the rooms currently visible in the room list are searchable. Rooms outside the visible viewport cannot be found, making it much harder to quickly navigate to less recently used channels.

I suspect this may be related to the room list using a virtualized viewport, where only the currently visible items are present in the DOM. If so, is there a way to preserve compatibility with the browser's built-in **Find in Page** functionality while still benefiting from virtualization?

Steps:
* Join a huge number of rooms
* Press `Ctrl/Cmd+F` to open the browser's find bar
* Enter a room name that is currently not visible

### Outcome

#### What did you expect?
The browser should find the room and a click allows me to switch to that room

#### What happened instead?
The browser cannot find the room and I have to manually scroll through the room list to find the expected room

### Operating system

macOS 26.6.2

### Browser information

Firefox 156

### URL for webapp

https://chat.mozilla.org

### Application version

1.12.26

### Homeserver

https://chat.mozilla.org

### Will you send logs?

No

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the issue in Firefox with a workspace containing many rooms, then inspect the new room-list virtualization and which rooms are present in the DOM. Compare browser Find in Page behavior for visible and off-screen rooms. Done means an off-screen room can be found and selected without losing the benefits of virtualization.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend, web-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.