From cf8b87fd14c60de6197314dc6103b8f57ee6ae08 Mon Sep 17 00:00:00 2001 From: R Midhun Suresh Date: Tue, 9 Jul 2024 17:06:50 +0530 Subject: [PATCH] Add tabs to the right panel (#12672) * Create new method for header button behaviour With the introduction of tabs, the behaviour of the header buttons is changed as follows: - Close any right panel if open - Open the correct right panel if no panel was open before The old method (and behaviour) is retained as showOrHidePhase. * Implement tabs in the right panel There are three tabs: Info, People and Threads * Remove unwanted code from RoomSummaryCard - Remove the menu item for opening the memberlist since that is now taken of by the tabs. - Remove the close button * Remove code for focusing close button from tac item See https://github.com/matrix-org/matrix-react-sdk/pull/12410 There's no longer a close button to focus so we instead focus the thread tab. This is done in RightPaneltabs.tsx so we just need to remove this code. * Introduce a room info icon to the header This was previously present in the legacy room header but not in the new header. * BaseCard changes - Adds id, ariaLabelledBy and role props to implement tab accessibility. - Adds hideHeaderButtons prop to hide header buttons (think back and close buttons). - Change confusing header rendering code: header is not rendered ONLY when no header is passed AND hideHeaderButtons is true. * Refactor repeated code into function Created a new function createSpaceScopeHeader which returns the component if the room is a space room. Previously this code was duplicated in every component that uses SpaceScopeHeader component. * Pass BaseCard attributes and use helper function Actually using the code from the last two commits * Add, update and remove tests/screenshots/snapshots * Fix distance between search bar and tabs * Update compound * Update screenshots/snapshots --- package.json | 2 +- playwright/e2e/crypto/crypto.spec.ts | 4 +- playwright/e2e/crypto/dehydration.spec.ts | 2 +- .../e2e/lazy-loading/lazy-loading.spec.ts | 2 +- playwright/e2e/read-receipts/index.ts | 7 +- .../e2e/right-panel/right-panel.spec.ts | 4 +- .../spaces/threads-activity-centre/index.ts | 8 +- .../threadsActivityCentre.spec.ts | 9 +- ...omSummaryCard-with-verified-e2ee-linux.png | Bin 26731 -> 25768 bytes ...nvite-dialog-room-with-user-pill-linux.png | Bin 21425 -> 21347 bytes .../invite-dialog-room-without-user-linux.png | Bin 15575 -> 15554 bytes .../with-name-and-address-linux.png | Bin 31880 -> 30147 bytes res/css/_components.pcss | 1 + .../views/right_panel/_RightPanelTabs.pcss | 25 ++++ .../views/right_panel/_RoomSummaryCard.pcss | 2 +- res/css/views/rooms/_MemberList.pcss | 1 + src/components/structures/RightPanel.tsx | 4 +- src/components/structures/RoomView.tsx | 2 +- src/components/structures/ThreadPanel.tsx | 15 +- src/components/views/right_panel/BaseCard.tsx | 34 ++++- .../right_panel/LegacyRoomHeaderButtons.tsx | 12 +- .../views/right_panel/RightPanelTabs.tsx | 86 ++++++++++++ .../views/right_panel/RoomSummaryCard.tsx | 29 +--- src/components/views/right_panel/UserInfo.tsx | 5 +- src/components/views/rooms/MemberList.tsx | 20 ++- src/components/views/rooms/RoomHeader.tsx | 12 ++ .../views/rooms/SpaceScopeHeader.tsx | 17 ++- .../views/rooms/ThirdPartyMemberInfo.tsx | 6 +- src/i18n/strings/en_EN.json | 1 + src/stores/right-panel/RightPanelStore.ts | 19 ++- .../action-handlers/View3pidInvite.ts | 2 +- .../structures/ThreadPanel-test.tsx | 39 ------ .../views/right_panel/RightPanelTabs-test.tsx | 72 ++++++++++ .../right_panel/RoomSummaryCard-test.tsx | 15 -- .../RightPanelTabs-test.tsx.snap | 119 ++++++++++++++++ .../RoomSummaryCard-test.tsx.snap | 129 ++---------------- .../views/rooms/RoomHeader-test.tsx | 7 + .../__snapshots__/RoomHeader-test.tsx.snap | 14 ++ .../right-panel/RightPanelStore-test.ts | 18 +++ .../action-handlers/View3pidInvite-test.ts | 6 +- yarn.lock | 45 ++---- 41 files changed, 501 insertions(+), 294 deletions(-) create mode 100644 res/css/views/right_panel/_RightPanelTabs.pcss create mode 100644 src/components/views/right_panel/RightPanelTabs.tsx create mode 100644 test/components/views/right_panel/RightPanelTabs-test.tsx create mode 100644 test/components/views/right_panel/__snapshots__/RightPanelTabs-test.tsx.snap diff --git a/package.json b/package.json index 7169afdc6e6..9741734d06f 100644 --- a/package.json +++ b/package.json @@ -78,7 +78,7 @@ "@sentry/browser": "^8.0.0", "@testing-library/react-hooks": "^8.0.1", "@vector-im/compound-design-tokens": "^1.2.0", - "@vector-im/compound-web": "^5.1.2", + "@vector-im/compound-web": "^5.2.3", "@zxcvbn-ts/core": "^3.0.4", "@zxcvbn-ts/language-common": "^3.0.4", "@zxcvbn-ts/language-en": "^3.0.2", diff --git a/playwright/e2e/crypto/crypto.spec.ts b/playwright/e2e/crypto/crypto.spec.ts index 995c37d358d..98f75d54e14 100644 --- a/playwright/e2e/crypto/crypto.spec.ts +++ b/playwright/e2e/crypto/crypto.spec.ts @@ -103,7 +103,7 @@ const verify = async (page: Page, bob: Bot) => { const bobsVerificationRequestPromise = waitForVerificationRequest(bob); const roomInfo = await openRoomInfo(page); - await roomInfo.getByRole("menuitem", { name: "People" }).click(); + await page.locator(".mx_RightPanelTabs").getByText("People").click(); await roomInfo.getByText("Bob").click(); await roomInfo.getByRole("button", { name: "Verify" }).click(); await roomInfo.getByRole("button", { name: "Start Verification" }).click(); @@ -279,7 +279,7 @@ test.describe("Cryptography", function () { // Assert that verified icon is rendered await page.getByRole("button", { name: "Room members" }).click(); - await page.getByRole("button", { name: "Room information" }).click(); + await page.locator(".mx_RightPanelTabs").getByText("Info").click(); await expect(page.locator('.mx_RoomSummaryCard_badges [data-kind="success"]')).toContainText("Encrypted"); // Take a snapshot of RoomSummaryCard with a verified E2EE icon diff --git a/playwright/e2e/crypto/dehydration.spec.ts b/playwright/e2e/crypto/dehydration.spec.ts index 13da99ccad4..eb9efde4eed 100644 --- a/playwright/e2e/crypto/dehydration.spec.ts +++ b/playwright/e2e/crypto/dehydration.spec.ts @@ -102,7 +102,7 @@ test.describe("Dehydration", () => { await viewRoomSummaryByName(page, app, ROOM_NAME); - await page.getByRole("menuitem", { name: "People" }).click(); + await page.locator(".mx_RightPanelTabs").getByText("People").click(); await expect(page.locator(".mx_MemberList")).toBeVisible(); await getMemberTileByName(page, NAME).click(); diff --git a/playwright/e2e/lazy-loading/lazy-loading.spec.ts b/playwright/e2e/lazy-loading/lazy-loading.spec.ts index 8b815898136..c04bcb8c643 100644 --- a/playwright/e2e/lazy-loading/lazy-loading.spec.ts +++ b/playwright/e2e/lazy-loading/lazy-loading.spec.ts @@ -80,7 +80,7 @@ test.describe("Lazy Loading", () => { async function openMemberlist(page: Page): Promise { await page.locator(".mx_LegacyRoomHeader").getByRole("button", { name: "Room info" }).click(); - await page.locator(".mx_RoomSummaryCard").getByRole("menuitem", { name: "People" }).click(); // \d represents the number of the room members + await page.locator(".mx_RightPanelTabs").getByText("People").click(); } function getMemberInMemberlist(page: Page, name: string): Locator { diff --git a/playwright/e2e/read-receipts/index.ts b/playwright/e2e/read-receipts/index.ts index 4dd0450fb9c..484df2251df 100644 --- a/playwright/e2e/read-receipts/index.ts +++ b/playwright/e2e/read-receipts/index.ts @@ -399,11 +399,10 @@ class Helpers { } /** - * Close the threads panel. (Actually, close any right panel, but for these - * tests we only open the threads panel.) + * Close the threads panel. */ async closeThreadsPanel() { - await this.page.locator(".mx_RightPanel").getByLabel("Close").click(); + await this.page.locator(".mx_LegacyRoomHeader").getByLabel("Threads").click(); await expect(this.page.locator(".mx_RightPanel")).not.toBeVisible(); } @@ -411,7 +410,7 @@ class Helpers { * Return to the list of threads, given we are viewing a single thread. */ async backToThreadsList() { - await this.page.locator(".mx_RightPanel").getByLabel("Threads").click(); + await this.page.locator(".mx_LegacyRoomHeader").getByLabel("Threads").click(); } /** diff --git a/playwright/e2e/right-panel/right-panel.spec.ts b/playwright/e2e/right-panel/right-panel.spec.ts index 4f578748d6e..e323a4b24f9 100644 --- a/playwright/e2e/right-panel/right-panel.spec.ts +++ b/playwright/e2e/right-panel/right-panel.spec.ts @@ -113,7 +113,7 @@ test.describe("RightPanel", () => { test("should handle viewing room member", async ({ page, app }) => { await viewRoomSummaryByName(page, app, ROOM_NAME); - await page.getByRole("menuitem", { name: "People" }).click(); + await page.locator(".mx_RightPanelTabs").getByText("People").click(); await expect(page.locator(".mx_MemberList")).toBeVisible(); await getMemberTileByName(page, NAME).click(); @@ -123,7 +123,7 @@ test.describe("RightPanel", () => { await page.getByRole("button", { name: "Room members" }).click(); await expect(page.locator(".mx_MemberList")).toBeVisible(); - await page.getByRole("button", { name: "Room information" }).click(); + await page.locator(".mx_RightPanelTabs").getByText("Info").click(); await checkRoomSummaryCard(page, ROOM_NAME); }); }); diff --git a/playwright/e2e/spaces/threads-activity-centre/index.ts b/playwright/e2e/spaces/threads-activity-centre/index.ts index 8bafe2e8049..8b013c44bb8 100644 --- a/playwright/e2e/spaces/threads-activity-centre/index.ts +++ b/playwright/e2e/spaces/threads-activity-centre/index.ts @@ -337,12 +337,10 @@ export class Helpers { } /** - * Assert that the thread panel is focused (actually the 'close' button, specifically) + * Assert that the thread tab is focused */ - assertThreadPanelFocused() { - return expect( - this.page.locator(".mx_ThreadPanel").locator(".mx_BaseCard_header").getByLabel("Close"), - ).toBeFocused(); + assertThreadTabFocused() { + return expect(this.page.locator("#thread-panel-tab")).toBeFocused(); } /** diff --git a/playwright/e2e/spaces/threads-activity-centre/threadsActivityCentre.spec.ts b/playwright/e2e/spaces/threads-activity-centre/threadsActivityCentre.spec.ts index 7d0b694ef57..66a3bc58e50 100644 --- a/playwright/e2e/spaces/threads-activity-centre/threadsActivityCentre.spec.ts +++ b/playwright/e2e/spaces/threads-activity-centre/threadsActivityCentre.spec.ts @@ -161,17 +161,12 @@ test.describe("Threads Activity Centre", () => { await util.assertNoTacIndicator(); }); - test("should focus the thread panel close button when clicking an item in the TAC", async ({ - room1, - room2, - util, - msg, - }) => { + test("should focus the thread tab when clicking an item in the TAC", async ({ room1, room2, util, msg }) => { await util.receiveMessages(room1, ["Msg1", msg.threadedOff("Msg1", "Resp1")]); await util.openTac(); await util.clickRoomInTac(room1.name); - await util.assertThreadPanelFocused(); + await util.assertThreadTabFocused(); }); }); diff --git a/playwright/snapshots/crypto/crypto.spec.ts/RoomSummaryCard-with-verified-e2ee-linux.png b/playwright/snapshots/crypto/crypto.spec.ts/RoomSummaryCard-with-verified-e2ee-linux.png index 4211f82b7aabc49b28b2d775b51163fac6fdf4ed..2c6160f2a19014674bb21d2a27968750d282a2e6 100644 GIT binary patch literal 25768 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 diff --git a/playwright/snapshots/invite/invite-dialog.spec.ts/invite-dialog-room-with-user-pill-linux.png b/playwright/snapshots/invite/invite-dialog.spec.ts/invite-dialog-room-with-user-pill-linux.png index 0443552daac2fb8679ede9988e49764f6bb4a16e..614533956be3c779d0d6bb54603279a7a9c8e99f 100644 GIT binary patch literal 21347 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 Bwjuxk literal 21425 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 diff --git a/playwright/snapshots/invite/invite-dialog.spec.ts/invite-dialog-room-without-user-linux.png b/playwright/snapshots/invite/invite-dialog.spec.ts/invite-dialog-room-without-user-linux.png index dd6303036bee2b40ece7269705d5345b220b46a8..51f365f353f18b600a626b2bd1ddf389f821ca4e 100644 GIT binary patch literal 15554 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 literal 15575 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 diff --git a/playwright/snapshots/right-panel/right-panel.spec.ts/with-name-and-address-linux.png b/playwright/snapshots/right-panel/right-panel.spec.ts/with-name-and-address-linux.png index 7fbf4be835a0082af1a82babb387fd857d43be0a..943cc9dfc8b57ba3452da7b021e76c631ab17b7c 100644 GIT binary patch literal 30147 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 diff --git a/res/css/_components.pcss b/res/css/_components.pcss index 043e7b76588..327b86da081 100644 --- a/res/css/_components.pcss +++ b/res/css/_components.pcss @@ -261,6 +261,7 @@ @import "./views/right_panel/_BaseCard.pcss"; @import "./views/right_panel/_EncryptionInfo.pcss"; @import "./views/right_panel/_PinnedMessagesCard.pcss"; +@import "./views/right_panel/_RightPanelTabs.pcss"; @import "./views/right_panel/_RoomSummaryCard.pcss"; @import "./views/right_panel/_ThreadPanel.pcss"; @import "./views/right_panel/_TimelineCard.pcss"; diff --git a/res/css/views/right_panel/_RightPanelTabs.pcss b/res/css/views/right_panel/_RightPanelTabs.pcss new file mode 100644 index 00000000000..afaae6c6575 --- /dev/null +++ b/res/css/views/right_panel/_RightPanelTabs.pcss @@ -0,0 +1,25 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +.mx_RightPanelTabs { + margin: 0; + height: 64px; + box-sizing: border-box; + + ul { + margin-left: 16px; + } +} diff --git a/res/css/views/right_panel/_RoomSummaryCard.pcss b/res/css/views/right_panel/_RoomSummaryCard.pcss index e3ed7b261bc..549eb69ee43 100644 --- a/res/css/views/right_panel/_RoomSummaryCard.pcss +++ b/res/css/views/right_panel/_RoomSummaryCard.pcss @@ -235,7 +235,7 @@ limitations under the License. } .mx_RoomSummaryCard_header { - padding: 15px 12px; + padding: 24px 12px 15px; } .mx_RoomSummaryCard_search { diff --git a/res/css/views/rooms/_MemberList.pcss b/res/css/views/rooms/_MemberList.pcss index 086a60810fd..6e2e5a43a4d 100644 --- a/res/css/views/rooms/_MemberList.pcss +++ b/res/css/views/rooms/_MemberList.pcss @@ -19,6 +19,7 @@ limitations under the License. display: flex; flex-direction: column; min-height: 0; + margin-top: 24px; .mx_Spinner { flex: 1 0 auto; diff --git a/src/components/structures/RightPanel.tsx b/src/components/structures/RightPanel.tsx index 638011e9dc9..bc80692459a 100644 --- a/src/components/structures/RightPanel.tsx +++ b/src/components/structures/RightPanel.tsx @@ -42,6 +42,7 @@ import { UPDATE_EVENT } from "../../stores/AsyncStore"; import { IRightPanelCard, IRightPanelCardState } from "../../stores/right-panel/RightPanelStoreIPanelState"; import { Action } from "../../dispatcher/actions"; import { XOR } from "../../@types/common"; +import { RightPanelTabs } from "../views/right_panel/RightPanelTabs"; interface BaseProps { overwriteCard?: IRightPanelCard; // used to display a custom card and ignoring the RightPanelStore (used for UserView) @@ -171,6 +172,7 @@ export default class RightPanel extends React.Component { { card = ( { return ( ); diff --git a/src/components/structures/RoomView.tsx b/src/components/structures/RoomView.tsx index 74c4f916272..a0555abbf78 100644 --- a/src/components/structures/RoomView.tsx +++ b/src/components/structures/RoomView.tsx @@ -1287,7 +1287,7 @@ export class RoomView extends React.Component { ]); } } else { - RightPanelStore.instance.showOrHidePanel(RightPanelPhases.RoomMemberList); + RightPanelStore.instance.showOrHidePhase(RightPanelPhases.RoomMemberList); } break; case Action.View3pidInvite: diff --git a/src/components/structures/ThreadPanel.tsx b/src/components/structures/ThreadPanel.tsx index d1e83601747..1fca77c27ec 100644 --- a/src/components/structures/ThreadPanel.tsx +++ b/src/components/structures/ThreadPanel.tsx @@ -37,9 +37,6 @@ import { ButtonEvent } from "../views/elements/AccessibleButton"; import Spinner from "../views/elements/Spinner"; import Heading from "../views/typography/Heading"; import { clearRoomNotification } from "../../utils/notifications"; -import { useDispatcher } from "../../hooks/useDispatcher"; -import dis from "../../dispatcher/dispatcher"; -import { Action } from "../../dispatcher/actions"; interface IProps { roomId: string; @@ -259,14 +256,6 @@ const ThreadPanel: React.FC = ({ roomId, onClose, permalinkCreator }) => } }, [timelineSet, timelinePanel]); - useDispatcher(dis, (payload) => { - // This actually foucses the close button on the threads panel, as its the only interactive element, - // but at least it puts the user in the right area of the app. - if (payload.action === Action.FocusThreadsPanel) { - closeButonRef.current?.focus(); - } - }); - return ( = ({ roomId, onClose, permalinkCreator }) => }} > = ({ roomId, onClose, permalinkCreator }) => empty={!hasThreads} /> } + id="thread-panel" className="mx_ThreadPanel" + ariaLabelledBy="thread-panel-tab" + role="tabpanel" onClose={onClose} withoutScrollContainer={true} ref={card} diff --git a/src/components/views/right_panel/BaseCard.tsx b/src/components/views/right_panel/BaseCard.tsx index 2afae0bc287..bb07426a112 100644 --- a/src/components/views/right_panel/BaseCard.tsx +++ b/src/components/views/right_panel/BaseCard.tsx @@ -26,8 +26,12 @@ import { CardContext } from "./context"; interface IProps { header?: ReactNode | null; + hideHeaderButtons?: boolean; footer?: ReactNode; className?: string; + id?: string; + role?: "tabpanel"; + ariaLabelledBy?: string; withoutScrollContainer?: boolean; closeLabel?: string; onClose?(ev: ButtonEvent): void; @@ -62,6 +66,10 @@ const BaseCard: React.FC = forwardRef( onClose, onBack, className, + id, + ariaLabelledBy, + role, + hideHeaderButtons, header, footer, withoutScrollContainer, @@ -100,13 +108,31 @@ const BaseCard: React.FC = forwardRef( children = {children}; } + let headerButtons: React.ReactElement | undefined; + if (!hideHeaderButtons) { + headerButtons = ( + <> + {backButton} + {closeButton} + + ); + } + + const shouldRenderHeader = header || !hideHeaderButtons; + return ( -
- {header !== null && ( +
+ {shouldRenderHeader && (
- {backButton} - {closeButton} + {headerButtons}
{header}
)} diff --git a/src/components/views/right_panel/LegacyRoomHeaderButtons.tsx b/src/components/views/right_panel/LegacyRoomHeaderButtons.tsx index 672a2886564..207c97ec7b3 100644 --- a/src/components/views/right_panel/LegacyRoomHeaderButtons.tsx +++ b/src/components/views/right_panel/LegacyRoomHeaderButtons.tsx @@ -214,27 +214,27 @@ export default class LegacyRoomHeaderButtons extends HeaderButtons { const currentPhase = RightPanelStore.instance.currentCard.phase; if (currentPhase && ROOM_INFO_PHASES.includes(currentPhase)) { if (this.state.phase === currentPhase) { - RightPanelStore.instance.showOrHidePanel(currentPhase); + RightPanelStore.instance.showOrHidePhase(currentPhase); } else { - RightPanelStore.instance.showOrHidePanel(currentPhase, RightPanelStore.instance.currentCard.state); + RightPanelStore.instance.showOrHidePhase(currentPhase, RightPanelStore.instance.currentCard.state); } } else { // This toggles for us, if needed - RightPanelStore.instance.showOrHidePanel(RightPanelPhases.RoomSummary); + RightPanelStore.instance.showOrHidePhase(RightPanelPhases.RoomSummary); } }; private onNotificationsClicked = (): void => { // This toggles for us, if needed - RightPanelStore.instance.showOrHidePanel(RightPanelPhases.NotificationPanel); + RightPanelStore.instance.showOrHidePhase(RightPanelPhases.NotificationPanel); }; private onPinnedMessagesClicked = (): void => { // This toggles for us, if needed - RightPanelStore.instance.showOrHidePanel(RightPanelPhases.PinnedMessages); + RightPanelStore.instance.showOrHidePhase(RightPanelPhases.PinnedMessages); }; private onTimelineCardClicked = (): void => { - RightPanelStore.instance.showOrHidePanel(RightPanelPhases.Timeline); + RightPanelStore.instance.showOrHidePhase(RightPanelPhases.Timeline); }; private onThreadsPanelClicked = (ev: ButtonEvent): void => { diff --git a/src/components/views/right_panel/RightPanelTabs.tsx b/src/components/views/right_panel/RightPanelTabs.tsx new file mode 100644 index 00000000000..fc2eeb17fac --- /dev/null +++ b/src/components/views/right_panel/RightPanelTabs.tsx @@ -0,0 +1,86 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import React, { useRef } from "react"; +import { NavBar, NavItem } from "@vector-im/compound-web"; + +import { _t } from "../../../languageHandler"; +import { RightPanelPhases } from "../../../stores/right-panel/RightPanelStorePhases"; +import RightPanelStore from "../../../stores/right-panel/RightPanelStore"; +import PosthogTrackers from "../../../PosthogTrackers"; +import { useDispatcher } from "../../../hooks/useDispatcher"; +import dispatcher from "../../../dispatcher/dispatcher"; +import { Action } from "../../../dispatcher/actions"; + +function shouldShowTabsForPhase(phase?: RightPanelPhases): boolean { + const tabs = [RightPanelPhases.RoomSummary, RightPanelPhases.RoomMemberList, RightPanelPhases.ThreadPanel]; + return !!phase && tabs.includes(phase); +} + +type Props = { + phase: RightPanelPhases; +}; + +export const RightPanelTabs: React.FC = ({ phase }): JSX.Element | null => { + const threadsTabRef = useRef(null); + + useDispatcher(dispatcher, (payload) => { + // This actually focuses the threads tab, as its the only interactive element, + // but at least it puts the user in the right area of the app. + if (payload.action === Action.FocusThreadsPanel) { + threadsTabRef.current?.focus(); + } + }); + + if (!shouldShowTabsForPhase(phase)) return null; + + return ( + + { + RightPanelStore.instance.pushCard({ phase: RightPanelPhases.RoomSummary }, true); + }} + active={phase === RightPanelPhases.RoomSummary} + > + {_t("right_panel|info")} + + ) => { + RightPanelStore.instance.pushCard({ phase: RightPanelPhases.RoomMemberList }, true); + PosthogTrackers.trackInteraction("WebRightPanelRoomInfoPeopleButton", ev); + }} + active={phase === RightPanelPhases.RoomMemberList} + > + {_t("common|people")} + + { + RightPanelStore.instance.pushCard({ phase: RightPanelPhases.ThreadPanel }, true); + }} + active={phase === RightPanelPhases.ThreadPanel} + ref={threadsTabRef} + > + {_t("common|threads")} + + + ); +}; diff --git a/src/components/views/right_panel/RoomSummaryCard.tsx b/src/components/views/right_panel/RoomSummaryCard.tsx index 2a1359e89d1..dbc8743944d 100644 --- a/src/components/views/right_panel/RoomSummaryCard.tsx +++ b/src/components/views/right_panel/RoomSummaryCard.tsx @@ -39,7 +39,6 @@ import { } from "@vector-im/compound-web"; import { Icon as FavouriteIcon } from "@vector-im/compound-design-tokens/icons/favourite.svg"; import { Icon as UserAddIcon } from "@vector-im/compound-design-tokens/icons/user-add.svg"; -import { Icon as UserProfileSolidIcon } from "@vector-im/compound-design-tokens/icons/user-profile-solid.svg"; import { Icon as LinkIcon } from "@vector-im/compound-design-tokens/icons/link.svg"; import { Icon as SettingsIcon } from "@vector-im/compound-design-tokens/icons/settings.svg"; import { Icon as ExportArchiveIcon } from "@vector-im/compound-design-tokens/icons/export-archive.svg"; @@ -106,7 +105,6 @@ import { useTransition } from "../../../hooks/useTransition"; interface IProps { room: Room; permalinkCreator: RoomPermalinkCreator; - onClose(): void; onSearchChange?: (e: ChangeEvent) => void; onSearchCancel?: () => void; focusRoomSearch?: boolean; @@ -382,7 +380,6 @@ const RoomTopic: React.FC> = ({ room }): JSX.Element | null const RoomSummaryCard: React.FC = ({ room, permalinkCreator, - onClose, onSearchChange, onSearchCancel, focusRoomSearch, @@ -416,11 +413,6 @@ const RoomSummaryCard: React.FC = ({ }); }; - const onRoomMembersClick = (ev: Event): void => { - RightPanelStore.instance.pushCard({ phase: RightPanelPhases.RoomMemberList }, true); - PosthogTrackers.trackInteraction("WebRightPanelRoomInfoPeopleButton", ev); - }; - const isRoomEncrypted = useIsEncrypted(cli, room); const roomContext = useContext(RoomContext); const e2eStatus = roomContext.e2eStatus; @@ -532,7 +524,13 @@ const RoomSummaryCard: React.FC = ({ const isFavorite = roomTags.includes(DefaultTagID.Favourite); return ( - + = ({ /> )} - {header} @@ -589,13 +581,6 @@ const RoomSummaryCard: React.FC = ({ - {!isVideoRoom && ( <> diff --git a/src/components/views/right_panel/UserInfo.tsx b/src/components/views/right_panel/UserInfo.tsx index 9d1de1f13d8..5f9830f5d63 100644 --- a/src/components/views/right_panel/UserInfo.tsx +++ b/src/components/views/right_panel/UserInfo.tsx @@ -80,7 +80,7 @@ import { DirectoryMember, startDmOnFirstMessage } from "../../../utils/direct-me import { SdkContextClass } from "../../../contexts/SDKContext"; import { asyncSome } from "../../../utils/arrays"; import UIStore from "../../../stores/UIStore"; -import { SpaceScopeHeader } from "../rooms/SpaceScopeHeader"; +import { createSpaceScopeHeader } from "../rooms/SpaceScopeHeader"; export interface IDevice extends Device { ambiguous?: boolean; @@ -1774,10 +1774,11 @@ const UserInfo: React.FC = ({ user, room, onClose, phase = RightPanelPha ); + return ( : undefined} + header={createSpaceScopeHeader(room)} onClose={onClose} closeLabel={closeLabel} cardState={cardState} diff --git a/src/components/views/rooms/MemberList.tsx b/src/components/views/rooms/MemberList.tsx index 828f9691dae..130daf50bd7 100644 --- a/src/components/views/rooms/MemberList.tsx +++ b/src/components/views/rooms/MemberList.tsx @@ -55,7 +55,7 @@ import { SDKContext } from "../../../contexts/SDKContext"; import { canInviteTo } from "../../../utils/room/canInviteTo"; import { inviteToRoom } from "../../../utils/room/inviteToRoom"; import { Action } from "../../../dispatcher/actions"; -import { SpaceScopeHeader } from "./SpaceScopeHeader"; +import { createSpaceScopeHeader } from "./SpaceScopeHeader"; const INITIAL_LOAD_NUM_MEMBERS = 30; const INITIAL_LOAD_NUM_INVITED = 5; @@ -64,6 +64,7 @@ const SHOW_MORE_INCREMENT = 100; interface IProps { roomId: string; searchQuery: string; + hideHeaderButtons?: boolean; onClose(): void; onSearchQueryChanged: (query: string) => void; } @@ -358,7 +359,14 @@ export default class MemberList extends React.Component { public render(): React.ReactNode { if (this.state.loading) { return ( - + ); @@ -415,12 +423,14 @@ export default class MemberList extends React.Component { /> ); - const scopeHeader = room ? : undefined; - return ( {scopeHeader}} + ariaLabelledBy="memberlist-panel-tab" + role="tabpanel" + header={createSpaceScopeHeader(room)} + hideHeaderButtons={this.props.hideHeaderButtons} footer={footer} onClose={this.props.onClose} > diff --git a/src/components/views/rooms/RoomHeader.tsx b/src/components/views/rooms/RoomHeader.tsx index 6f4620b637b..19b368cd180 100644 --- a/src/components/views/rooms/RoomHeader.tsx +++ b/src/components/views/rooms/RoomHeader.tsx @@ -20,6 +20,7 @@ import { Icon as VideoCallIcon } from "@vector-im/compound-design-tokens/icons/v import { Icon as VoiceCallIcon } from "@vector-im/compound-design-tokens/icons/voice-call.svg"; import { Icon as CloseCallIcon } from "@vector-im/compound-design-tokens/icons/close.svg"; import { Icon as ThreadsIcon } from "@vector-im/compound-design-tokens/icons/threads-solid.svg"; +import { Icon as RoomInfoIcon } from "@vector-im/compound-design-tokens/icons/info-solid.svg"; import { Icon as NotificationsIcon } from "@vector-im/compound-design-tokens/icons/notifications-solid.svg"; import { Icon as VerifiedIcon } from "@vector-im/compound-design-tokens/icons/verified.svg"; import { Icon as ErrorIcon } from "@vector-im/compound-design-tokens/icons/error.svg"; @@ -336,6 +337,17 @@ export default function RoomHeader({ )} + + { + evt.stopPropagation(); + RightPanelStore.instance.showOrHidePanel(RightPanelPhases.RoomSummary); + }} + aria-label={_t("right_panel|room_summary_card|title")} + > + + + ; + else return null; +} + /** * Scope header used to decorate right panels that are scoped to a space. - * When room is not a space renders nothing. - * Otherwise renders room avatar and name. + * It renders room avatar and name. */ export const SpaceScopeHeader: React.FC<{ room: Room }> = ({ room }) => { const roomName = useRoomName(room); - if (!room.isSpaceRoom()) { - return null; - } - return ( : undefined; - return ( - + {/* same as userinfo name style */} diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index afb381f6a13..eaf5784af91 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -1833,6 +1833,7 @@ "edit_integrations": "Edit widgets, bridges & bots", "export_chat_button": "Export chat", "files_button": "Files", + "info": "Info", "pinned_messages": { "empty": "Nothing pinned, yet", "explainer": "If you have permissions, open the menu on any message and select Pin to stick them here.", diff --git a/src/stores/right-panel/RightPanelStore.ts b/src/stores/right-panel/RightPanelStore.ts index 0cffdb423cb..69ac46806d1 100644 --- a/src/stores/right-panel/RightPanelStore.ts +++ b/src/stores/right-panel/RightPanelStore.ts @@ -236,6 +236,23 @@ export default class RightPanelStore extends ReadyWatchingStore { } } + /** + * If the right panel is open, it is closed. + * If the right panel is closed, it is opened with `phase`. + * + * This is different from showOrHidePhase which only closes the panel + * if the panel was already showing the phase passed as argument. + * @see showOrHidePhase + * @param phase The right panel phase. + */ + public showOrHidePanel(phase: RightPanelPhases): void { + if (!this.isOpen) { + this.setCard({ phase }); + } else { + this.togglePanel(null); + } + } + /** * Helper to show a right panel phase. * If the UI is already showing that phase, the right panel will be hidden. @@ -245,7 +262,7 @@ export default class RightPanelStore extends ReadyWatchingStore { * @param phase The right panel phase. * @param cardState The state within the phase. */ - public showOrHidePanel(phase: RightPanelPhases, cardState?: Partial): void { + public showOrHidePhase(phase: RightPanelPhases, cardState?: Partial): void { if (this.currentCard.phase == phase && !cardState && this.isOpen) { this.togglePanel(null); } else { diff --git a/src/stores/right-panel/action-handlers/View3pidInvite.ts b/src/stores/right-panel/action-handlers/View3pidInvite.ts index be61fd57451..e1d516de7a0 100644 --- a/src/stores/right-panel/action-handlers/View3pidInvite.ts +++ b/src/stores/right-panel/action-handlers/View3pidInvite.ts @@ -32,6 +32,6 @@ export const onView3pidInvite = (payload: ActionPayload, rightPanelStore: RightP state: { memberInfoEvent: payload.event }, }); } else { - rightPanelStore.showOrHidePanel(RightPanelPhases.RoomMemberList); + rightPanelStore.showOrHidePhase(RightPanelPhases.RoomMemberList); } }; diff --git a/test/components/structures/ThreadPanel-test.tsx b/test/components/structures/ThreadPanel-test.tsx index 4f66379a3d9..19122e4ccef 100644 --- a/test/components/structures/ThreadPanel-test.tsx +++ b/test/components/structures/ThreadPanel-test.tsx @@ -36,8 +36,6 @@ import ResizeNotifier from "../../../src/utils/ResizeNotifier"; import { createTestClient, getRoomContext, mkRoom, mockPlatformPeg, stubClient } from "../../test-utils"; import { mkThread } from "../../test-utils/threads"; import { IRoomState } from "../../../src/components/structures/RoomView"; -import defaultDispatcher from "../../../src/dispatcher/dispatcher"; -import { Action } from "../../../src/dispatcher/actions"; jest.mock("../../../src/utils/Feedback"); @@ -148,43 +146,6 @@ describe("ThreadPanel", () => { fireEvent.click(getByRole(container, "button", { name: "Mark all as read" })); await waitFor(() => expect(mockClient.sendReadReceipt).not.toHaveBeenCalled()); }); - - it("focuses the close button on FocusThreadsPanel dispatch", () => { - const ROOM_ID = "!roomId:example.org"; - - stubClient(); - mockPlatformPeg(); - const mockClient = mocked(MatrixClientPeg.safeGet()); - - const room = new Room(ROOM_ID, mockClient, mockClient.getUserId() ?? "", { - pendingEventOrdering: PendingEventOrdering.Detached, - }); - - render( - - - - - , - ); - - // Unfocus it first so we know it's not just focused by coincidence - screen.getByTestId("base-card-close-button").blur(); - expect(screen.getByTestId("base-card-close-button")).not.toHaveFocus(); - - defaultDispatcher.dispatch({ action: Action.FocusThreadsPanel }, true); - - expect(screen.getByTestId("base-card-close-button")).toHaveFocus(); - }); }); describe("Filtering", () => { diff --git a/test/components/views/right_panel/RightPanelTabs-test.tsx b/test/components/views/right_panel/RightPanelTabs-test.tsx new file mode 100644 index 00000000000..dae7b1a79a5 --- /dev/null +++ b/test/components/views/right_panel/RightPanelTabs-test.tsx @@ -0,0 +1,72 @@ +/* +Copyright 2024 The Matrix.org Foundation C.I.C. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +import React from "react"; +import { render, fireEvent } from "@testing-library/react"; + +import dis from "../../../../src/dispatcher/dispatcher"; +import RightPanelStore from "../../../../src/stores/right-panel/RightPanelStore"; +import { RightPanelPhases } from "../../../../src/stores/right-panel/RightPanelStorePhases"; +import { RightPanelTabs } from "../../../../src/components/views/right_panel/RightPanelTabs"; +import { Action } from "../../../../src/dispatcher/actions"; + +describe("", () => { + it("Component renders the correct tabs", () => { + const { container, getByRole } = render(); + expect(container).toMatchSnapshot(); + + // We expect Info, People and Threads as tabs + expect(getByRole("tab", { name: "Info" })).toBeDefined(); + expect(getByRole("tab", { name: "People" })).toBeDefined(); + expect(getByRole("tab", { name: "Threads" })).toBeDefined(); + }); + + it("Correct tab is active", () => { + const { container } = render(); + expect(container).toMatchSnapshot(); + // Assert that the active tab is Info + expect(container.querySelectorAll("[aria-selected='true'").length).toEqual(1); + expect(container.querySelector("[aria-selected='true'")).toHaveAccessibleName("People"); + }); + + it("Renders nothing for some phases, eg: FilePanel", () => { + const { container } = render(); + expect(container).toBeEmptyDOMElement(); + }); + + it("onClick behaviors work as expected", () => { + const spy = jest.spyOn(RightPanelStore.instance, "pushCard"); + const { getByRole } = render(); + + // Info -> People + fireEvent.click(getByRole("tab", { name: "People" })); + expect(spy).toHaveBeenLastCalledWith({ phase: RightPanelPhases.RoomMemberList }, true); + + // People -> Threads + fireEvent.click(getByRole("tab", { name: "Threads" })); + expect(spy).toHaveBeenLastCalledWith({ phase: RightPanelPhases.ThreadPanel }, true); + + // Threads -> Info + fireEvent.click(getByRole("tab", { name: "Info" })); + expect(spy).toHaveBeenLastCalledWith({ phase: RightPanelPhases.RoomSummary }, true); + }); + + it("Threads tab is focused on action", () => { + const { getByRole } = render(); + dis.dispatch({ action: Action.FocusThreadsPanel }, true); + expect(getByRole("tab", { name: "Threads" })).toHaveFocus(); + }); +}); diff --git a/test/components/views/right_panel/RoomSummaryCard-test.tsx b/test/components/views/right_panel/RoomSummaryCard-test.tsx index f90144a3ba4..1ddea763829 100644 --- a/test/components/views/right_panel/RoomSummaryCard-test.tsx +++ b/test/components/views/right_panel/RoomSummaryCard-test.tsx @@ -35,7 +35,6 @@ import { flushPromises, getMockClientWithEventEmitter, mockClientMethodsUser } f import { PollHistoryDialog } from "../../../../src/components/views/dialogs/PollHistoryDialog"; import { RoomPermalinkCreator } from "../../../../src/utils/permalinks/Permalinks"; import { _t } from "../../../../src/languageHandler"; -import SettingsStore from "../../../../src/settings/SettingsStore"; import { tagRoom } from "../../../../src/utils/room/tagRoom"; import { DefaultTagID } from "../../../../src/stores/room-list/models"; import { Action } from "../../../../src/dispatcher/actions"; @@ -195,7 +194,6 @@ describe("", () => { @@ -212,7 +210,6 @@ describe("", () => { @@ -270,18 +267,6 @@ describe("", () => { expect(defaultDispatcher.dispatch).toHaveBeenCalledWith({ action: "open_room_settings" }); }); - it("renders room members options when new room UI is not enabled", () => { - jest.spyOn(SettingsStore, "getValue").mockReturnValue(false); - const { getByText } = getComponent(); - - fireEvent.click(getByText(_t("common|people"))); - - expect(RightPanelStore.instance.pushCard).toHaveBeenCalledWith( - { phase: RightPanelPhases.RoomMemberList }, - true, - ); - }); - describe("pinning", () => { it("renders pins options when pinning feature is enabled", () => { mocked(settingsHooks.useFeatureEnabled).mockImplementation((feature) => feature === "feature_pinning"); diff --git a/test/components/views/right_panel/__snapshots__/RightPanelTabs-test.tsx.snap b/test/components/views/right_panel/__snapshots__/RightPanelTabs-test.tsx.snap new file mode 100644 index 00000000000..36c3ccf6b5c --- /dev/null +++ b/test/components/views/right_panel/__snapshots__/RightPanelTabs-test.tsx.snap @@ -0,0 +1,119 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[` Component renders the correct tabs 1`] = ` +
+ +
+`; + +exports[` Correct tab is active 1`] = ` +
+ +
+`; diff --git a/test/components/views/right_panel/__snapshots__/RoomSummaryCard-test.tsx.snap b/test/components/views/right_panel/__snapshots__/RoomSummaryCard-test.tsx.snap index 13d038adca0..8f8322d44d0 100644 --- a/test/components/views/right_panel/__snapshots__/RoomSummaryCard-test.tsx.snap +++ b/test/components/views/right_panel/__snapshots__/RoomSummaryCard-test.tsx.snap @@ -3,7 +3,10 @@ exports[` has button to edit topic when expanded 1`] = `
has button to edit topic when expanded 1`] = `
-
-
+ />
@@ -244,36 +239,6 @@ exports[` has button to edit topic when expanded 1`] = ` data-orientation="horizontal" role="separator" /> - +