From b71ac8d068fd2318b5b50859465bc00304cb1543 Mon Sep 17 00:00:00 2001 From: Badi Ifaoui Date: Mon, 25 Mar 2024 13:36:09 +0100 Subject: [PATCH 1/2] fix(#81): room name getter --- src/components/views/elements/RoomName.tsx | 4 ++-- src/components/views/rooms/NewRoomIntro.tsx | 1 + src/hooks/useRoomName.ts | 17 ----------------- 3 files changed, 3 insertions(+), 19 deletions(-) diff --git a/src/components/views/elements/RoomName.tsx b/src/components/views/elements/RoomName.tsx index 66139b6e64c..9dd78187d8e 100644 --- a/src/components/views/elements/RoomName.tsx +++ b/src/components/views/elements/RoomName.tsx @@ -19,7 +19,7 @@ import React, { useCallback, useMemo } from "react"; import { Icon as TokenGatedRoomIcon } from "../../../../res/themes/superhero/img/icons/tokengated-room.svg"; import { Icon as CommunityRoomIcon } from "../../../../res/themes/superhero/img/icons/community-room.svg"; -import { useRoomName } from "../../../hooks/useRoomName"; +import { getRoomName } from "../../../hooks/useRoomName"; import { useVerifiedRoom } from "../../../hooks/useVerifiedRoom"; import { UserVerifiedBadge } from "./UserVerifiedBadge"; import { BotVerifiedBadge } from "./BotVerifiedBadge"; @@ -31,7 +31,7 @@ interface IProps { } export const RoomName = ({ room, children, maxLength }: IProps): JSX.Element => { - const roomName = useRoomName(room); + const roomName = getRoomName(room); const { isTokenGatedRoom, isCommunityRoom } = useVerifiedRoom(room); const roomUser: string | undefined = useMemo(() => { diff --git a/src/components/views/rooms/NewRoomIntro.tsx b/src/components/views/rooms/NewRoomIntro.tsx index 7bfaeccb972..5c5f1eef5f1 100644 --- a/src/components/views/rooms/NewRoomIntro.tsx +++ b/src/components/views/rooms/NewRoomIntro.tsx @@ -270,6 +270,7 @@ const NewRoomIntro: React.FC = () => {

+ {console.log(room)}

diff --git a/src/hooks/useRoomName.ts b/src/hooks/useRoomName.ts index ced2c4ba051..bc57dc6b815 100644 --- a/src/hooks/useRoomName.ts +++ b/src/hooks/useRoomName.ts @@ -2,7 +2,6 @@ import { IPublicRoomsChunkRoom, Room } from "matrix-js-sdk/src/matrix"; import { getDisplayAliasForAliasSet } from "matrix-react-sdk/src/Rooms"; import { _t } from "matrix-react-sdk/src/languageHandler"; import { IOOBData } from "matrix-react-sdk/src/stores/ThreepidInviteStore"; -import { useMemo } from "react"; /** * Removes the [TG] prefix and leading whitespace from a room name @@ -34,19 +33,3 @@ export function getRoomName(room?: Room | IPublicRoomsChunkRoom, oobName?: IOOBD ); } -/** - * Determines the room name from a combination of the room model and potential - * out-of-band information - * @param room - The room model - * @param oobData - out-of-band information about the room - * @returns {string} the room name - * - * TODO: check if useTypedEventEmitter is needed - */ -export function useRoomName(room?: Room | IPublicRoomsChunkRoom, oobData?: IOOBData): string { - const name = useMemo(() => { - return getRoomName(room, oobData); - }, [room, oobData]); - - return name; -} From 751ff25e3f27918e4095d80f00667af8addf5d1e Mon Sep 17 00:00:00 2001 From: Badi Ifaoui Date: Tue, 26 Mar 2024 13:21:52 +0100 Subject: [PATCH 2/2] chore: sync compoments --- src/components/views/right_panel/UserInfo.tsx | 13 ++++--------- src/components/views/rooms/NewRoomIntro.tsx | 1 - src/components/views/spaces/SpacePanel.tsx | 15 +++++++++++++++ src/hooks/useRoomName.ts | 1 - 4 files changed, 19 insertions(+), 11 deletions(-) diff --git a/src/components/views/right_panel/UserInfo.tsx b/src/components/views/right_panel/UserInfo.tsx index fdfa87a5b80..6b2d999d696 100644 --- a/src/components/views/right_panel/UserInfo.tsx +++ b/src/components/views/right_panel/UserInfo.tsx @@ -896,7 +896,7 @@ const MuteToggleButton: React.FC = ({ return; } - cli.setPowerLevel(roomId, target, level, powerLevelEvent) + cli.setPowerLevel(roomId, target, level) .then( () => { // NO-OP; rely on the m.room.member event coming down else we could @@ -1123,13 +1123,8 @@ export const PowerLevelEditor: React.FC<{ async (powerLevel: number) => { setSelectedPowerLevel(powerLevel); - const applyPowerChange = ( - roomId: string, - target: string, - powerLevel: number, - powerLevelEvent: MatrixEvent, - ): Promise => { - return cli.setPowerLevel(roomId, target, powerLevel, powerLevelEvent).then( + const applyPowerChange = (roomId: string, target: string, powerLevel: number): Promise => { + return cli.setPowerLevel(roomId, target, powerLevel).then( function () { // NO-OP; rely on the m.room.member event coming down else we could // get out of sync if we force setState here! @@ -1177,7 +1172,7 @@ export const PowerLevelEditor: React.FC<{ } } - await applyPowerChange(roomId, target, powerLevel, powerLevelEvent); + await applyPowerChange(roomId, target, powerLevel); }, [user.roomId, user.userId, cli, room], ); diff --git a/src/components/views/rooms/NewRoomIntro.tsx b/src/components/views/rooms/NewRoomIntro.tsx index 5c5f1eef5f1..7bfaeccb972 100644 --- a/src/components/views/rooms/NewRoomIntro.tsx +++ b/src/components/views/rooms/NewRoomIntro.tsx @@ -270,7 +270,6 @@ const NewRoomIntro: React.FC = () => {

- {console.log(room)}

diff --git a/src/components/views/spaces/SpacePanel.tsx b/src/components/views/spaces/SpacePanel.tsx index ae04cc82fa4..66188807319 100644 --- a/src/components/views/spaces/SpacePanel.tsx +++ b/src/components/views/spaces/SpacePanel.tsx @@ -210,6 +210,20 @@ const OrphansButton: React.FC = ({ selected, isPanelCollap ); }; +const VideoRoomsButton: React.FC = ({ selected, isPanelCollapsed }) => { + return ( + + ); +}; + const CreateSpaceButton: React.FC> = ({ isPanelCollapsed, setPanelCollapsed, @@ -264,6 +278,7 @@ const metaSpaceComponentMap: Record = { [MetaSpace.Favourites]: FavouritesButton, [MetaSpace.People]: PeopleButton, [MetaSpace.Orphans]: OrphansButton, + [MetaSpace.VideoRooms]: VideoRoomsButton, }; interface IInnerSpacePanelProps extends DroppableProvidedProps { diff --git a/src/hooks/useRoomName.ts b/src/hooks/useRoomName.ts index bc57dc6b815..75ab8412f46 100644 --- a/src/hooks/useRoomName.ts +++ b/src/hooks/useRoomName.ts @@ -32,4 +32,3 @@ export function getRoomName(room?: Room | IPublicRoomsChunkRoom, oobName?: IOOBD (roomName || "").replace(":", ":\u200b"), // add a zero-width space to allow linewrapping after the colon (matrix defaults) ); } -