Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New room list: basic flat list #29368

Merged
merged 10 commits into from
Mar 6, 2025

Conversation

florianduros
Copy link
Member

@florianduros florianduros commented Feb 26, 2025

Task https://github.com/element-hq/wat-internal/issues/204
Figma design

This PR introduces a new virtualised room list.

Component architecture:

  • RoomListCell: a cell without virtualisation information.
  • RoomList: handle virtualisation of the list.
  • RoomListView: bring the room list and the future room filters together. Both are using roomListViewModel.
  • RoomListPanel: the complete room list panel: search, header and the room list view.

 
The PR doesn't include:

  • room filters
  • room selection decoration
  • notification decorations
  • menu on room cell hover
  • keyboard shortcuts

 
About accessibility. The virtualised list doesn't have the ideal a11y role:

Pseudo HTML code Chrome accessibility tree
image image

These roles can be changed manually on some nodes managed by react-virtualized. It will be a bit dirty and I prefer to play with it in a dedicated PR. See #29430

Demo

Screen.Recording.2025-03-03.at.16.09.53.mov

@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from db555f8 to f1a34bf Compare February 26, 2025 15:30
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from f1a34bf to 8828730 Compare February 26, 2025 15:34
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from 8828730 to 58b2a25 Compare February 26, 2025 15:44
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from 58b2a25 to 57fa7ad Compare February 27, 2025 09:53
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from 57fa7ad to d363243 Compare February 27, 2025 16:12
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from d363243 to 86164ff Compare February 27, 2025 16:20
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from 86164ff to c01ab50 Compare February 27, 2025 17:11
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from c01ab50 to 26e12ba Compare February 28, 2025 08:53
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from 2606f35 to 852d08e Compare February 28, 2025 10:05
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from 852d08e to 2662f25 Compare February 28, 2025 10:20
@florianduros florianduros force-pushed the florianduros/new-room-list/fist-step-list branch from b008a30 to e329640 Compare March 3, 2025 11:32
@florianduros florianduros changed the title WIP: room list New room list: basic flat list Mar 3, 2025
/**
* A cell in the room list
*/
export function RoomListCell({ room, ...props }: RoomListCellProps): JSX.Element {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would be nice if this component eventually had it's own vm.

Copy link
Member Author

@florianduros florianduros Mar 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, it can be introduced when adding the hover menu I think. In all cases, this component needs the room in props so it will be an empty vm here.

We can move the Action.ViewRoom dispatcher un when we will add this vm

@florianduros florianduros added this pull request to the merge queue Mar 6, 2025
Merged via the queue into develop with commit 90cc44b Mar 6, 2025
68 checks passed
@florianduros florianduros deleted the florianduros/new-room-list/fist-step-list branch March 6, 2025 10:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants