Room list: improve section in room list context menu (#33733)

* fix: hide section separator in context menu when there is no section

* fix: truncate long section name

* feat: add remove from section entry to room list item context menu

* test: update tests and stories

* test: add new test

* test: use same mocks

* test: add e2e test for "Remove from section"
This commit is contained in:
Florian Duros
2026-06-09 12:11:02 +02:00
committed by GitHub
parent 47fe4ba4d0
commit 5fa2da2a91
13 changed files with 95 additions and 34 deletions
@@ -371,5 +371,33 @@ test.describe("Room list custom sections", () => {
// Room is back in the Chats section
await assertRoomInSection(page, "Chats", "my room");
});
test("should remove a room from a custom section via the 'Remove from section' menu entry", async ({
page,
app,
}) => {
await app.client.createRoom({ name: "my room" });
await createCustomSection(page, "Work");
const roomList = getRoomList(page);
// Move the room to the Work section
let roomItem = roomList.getByRole("row", { name: "Open room my room" });
await roomItem.hover();
await roomItem.getByRole("button", { name: "More Options" }).click();
await page.getByRole("menuitem", { name: "Move to" }).hover();
await page.getByRole("menuitem", { name: "Work" }).click();
await assertRoomInSection(page, "Work", "my room");
// Open the More Options menu and click "Remove from section"
roomItem = roomList.getByRole("row", { name: "Open room my room" });
await roomItem.hover();
await roomItem.getByRole("button", { name: "More Options" }).click();
await page.getByRole("menuitem", { name: "Remove from section" }).click();
// Room is back in the Chats section
await assertRoomInSection(page, "Chats", "my room");
});
});
});