From 53b17b7134e21ac58bb26f1f9a7b81b5274a1721 Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 2 Sep 2025 17:20:39 +0100 Subject: [PATCH 01/12] Release announcement for new room list --- .../RoomListPanel/RoomListHeaderView.tsx | 40 +++++++++++++++---- .../rooms/RoomListPanel/RoomListView.tsx | 14 ++++++- src/components/views/spaces/SpacePanel.tsx | 11 ++++- src/i18n/strings/en_EN.json | 20 ++++++++++ src/stores/ReleaseAnnouncementStore.ts | 8 +++- 5 files changed, 82 insertions(+), 11 deletions(-) diff --git a/src/components/views/rooms/RoomListPanel/RoomListHeaderView.tsx b/src/components/views/rooms/RoomListPanel/RoomListHeaderView.tsx index 86189cae4f8..1da0fa78086 100644 --- a/src/components/views/rooms/RoomListPanel/RoomListHeaderView.tsx +++ b/src/components/views/rooms/RoomListPanel/RoomListHeaderView.tsx @@ -23,6 +23,7 @@ import { useRoomListHeaderViewModel, } from "../../../viewmodels/roomlist/RoomListHeaderViewModel"; import { RoomListOptionsMenu } from "./RoomListOptionsMenu"; +import { ReleaseAnnouncement } from "../../../structures/ReleaseAnnouncement"; /** * The header view for the room list @@ -45,15 +46,38 @@ export function RoomListHeaderView(): JSX.Element { {vm.displaySpaceMenu && } - + +
+ +
+
+ {/* If we don't display the compose menu, it means that the user can only send DM */} - {vm.displayComposeMenu ? ( - - ) : ( - vm.createChatRoom(e.nativeEvent)}> - - - )} + +
+ {vm.displayComposeMenu ? ( + + ) : ( + vm.createChatRoom(e.nativeEvent)} + > + + + )} +
+
); diff --git a/src/components/views/rooms/RoomListPanel/RoomListView.tsx b/src/components/views/rooms/RoomListPanel/RoomListView.tsx index a99312be53e..a0c91842118 100644 --- a/src/components/views/rooms/RoomListPanel/RoomListView.tsx +++ b/src/components/views/rooms/RoomListPanel/RoomListView.tsx @@ -11,6 +11,8 @@ import { useRoomListViewModel } from "../../../viewmodels/roomlist/RoomListViewM import { RoomList } from "./RoomList"; import { EmptyRoomList } from "./EmptyRoomList"; import { RoomListPrimaryFilters } from "./RoomListPrimaryFilters"; +import { _t } from "../../../../languageHandler"; +import { ReleaseAnnouncement } from "../../../structures/ReleaseAnnouncement"; /** * Host the room list and the (future) room filters @@ -28,7 +30,17 @@ export function RoomListView(): JSX.Element { } return ( <> - + +
+ +
+
{listBody} ); diff --git a/src/components/views/spaces/SpacePanel.tsx b/src/components/views/spaces/SpacePanel.tsx index 9f0d534767b..8cb54ff7525 100644 --- a/src/components/views/spaces/SpacePanel.tsx +++ b/src/components/views/spaces/SpacePanel.tsx @@ -68,6 +68,7 @@ import { ThreadsActivityCentre } from "./threads-activity-centre/"; import AccessibleButton from "../elements/AccessibleButton"; import { Landmark, LandmarkNavigation } from "../../../accessibility/LandmarkNavigation"; import { KeyboardShortcut } from "../settings/KeyboardShortcut"; +import { ReleaseAnnouncement } from "../../structures/ReleaseAnnouncement"; const useSpaces = (): [Room[], MetaSpace[], Room[], SpaceKey] => { const invites = useEventEmitterState(SpaceStore.instance, UPDATE_INVITED_SPACES, () => { @@ -431,7 +432,15 @@ const SpacePanel: React.FC = () => { - + + + diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index dc2a17cc629..ab41a1763d3 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -2179,6 +2179,26 @@ "one": "Currently removing messages in %(count)s room", "other": "Currently removing messages in %(count)s rooms" }, + "release_announcement": { + "done": "Done", + "filter": { + "description": "Filter your chats with a single click. Expand to view more filters.", + "title": "New quick filters" + }, + "intro": { + "description": "The chats list has been updated to be more clear and simple to use.", + "title": "Chats has a new look!" + }, + "next": "Next", + "settings": { + "description": "To show or hide message previews, go to All settings > General > Room list", + "title": "Some settings have moved" + }, + "sort": { + "description": "Change the ordering of your chats from most recent to A-Z", + "title": "Sort your chats" + } + }, "room": { "more_options": "More Options", "open_room": "Open room %(roomName)s" diff --git a/src/stores/ReleaseAnnouncementStore.ts b/src/stores/ReleaseAnnouncementStore.ts index 0b287d44b98..72e60e0398f 100644 --- a/src/stores/ReleaseAnnouncementStore.ts +++ b/src/stores/ReleaseAnnouncementStore.ts @@ -17,7 +17,13 @@ import { Features } from "../settings/Settings"; /** * The features are shown in the array order. */ -const FEATURES = ["pinningMessageList"] as const; +const FEATURES = [ + "newRoomList_intro", + "newRoomList_sort", + "newRoomList_filter", + "newRoomList_settings", + "pinningMessageList", +] as const; /** * All the features that can be shown in the release announcements. */ From 9b5a75c2a4e6fe371046cb3bf0facd826b96408c Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 2 Sep 2025 17:31:50 +0100 Subject: [PATCH 02/12] Update snapshots --- .../RoomSummaryCardView-test.tsx.snap | 149 +--------------- .../RoomListHeaderView-test.tsx.snap | 166 +++++++++++------- .../__snapshots__/SpacePanel-test.tsx.snap | 4 + 3 files changed, 114 insertions(+), 205 deletions(-) diff --git a/test/unit-tests/components/views/right_panel/__snapshots__/RoomSummaryCardView-test.tsx.snap b/test/unit-tests/components/views/right_panel/__snapshots__/RoomSummaryCardView-test.tsx.snap index d849d0d7cce..347976e7864 100644 --- a/test/unit-tests/components/views/right_panel/__snapshots__/RoomSummaryCardView-test.tsx.snap +++ b/test/unit-tests/components/views/right_panel/__snapshots__/RoomSummaryCardView-test.tsx.snap @@ -10,13 +10,12 @@ exports[` has button to edit topic 1`] = ` >