Include DMs in space unread counts

This commit is contained in:
SpiritCroc 2024-05-26 10:46:02 +02:00
parent 0fb8fa0931
commit 108a76376c
16 changed files with 119 additions and 24 deletions

View File

@ -14,6 +14,9 @@ Note that this list may be incomplete or outdated.
- Do not exclude currently selected room when updating room sort order
- Do not force muted rooms to be sorted at the bottom
- Hide reactions from room previews
- Show unread state of muted rooms
- Increase default visible tiles before collapsing each section
- Include DMs in space unread counts
## Conversation screen

@ -1 +1 @@
Subproject commit 78992f458b7f08696fca099c58e8c777d2ad5792
Subproject commit 3059810f1a9dc21b7545f38fab082def8f5ae893

@ -1 +1 @@
Subproject commit 4a895f6dafea7cbf2994469501426bf8e2d79e50
Subproject commit 5e02a42ca0863a6d991f989a5b29d07b401766d4

@ -1 +1 @@
Subproject commit bc03950f8a1bbc2900c5c4198430c040474bd144
Subproject commit a86d4ceb49137f13240674ddb358bb96934ba720

@ -1 +1 @@
Subproject commit 0c40f6d26f1662914521ed56507987149b462733
Subproject commit d84bcbc2155a138bcfafc3efa60c4abf7b4a4d14

View File

@ -1,4 +1,4 @@
From bf8d7700c8680a0324ddf3b0d32c8a16af2176ae Mon Sep 17 00:00:00 2001
From 53255efd63c66bee0d19f8f84fcffd9878af88dd Mon Sep 17 00:00:00 2001
From: SpiritCroc <dev@spiritcroc.de>
Date: Sat, 2 Dec 2023 12:57:26 +0100
Subject: Add back schildi fetch-package.ts modifications
@ -58,5 +58,5 @@ index 051e53a..3446eb4 100644
if (!haveDeploy) {
const outPath = path.join(pkgDir, filename);
--
2.45.0
2.45.1

View File

@ -1,4 +1,4 @@
From b3e2e01c33bacd014287ab5dc7477fc70d91f9ab Mon Sep 17 00:00:00 2001
From 2dd7dd408d741ea4a0fc3b2b3fe8e23c3efcbc99 Mon Sep 17 00:00:00 2001
From: SpiritCroc <dev@spiritcroc.de>
Date: Thu, 9 May 2024 09:21:21 +0200
Subject: Add fields for media caption support
@ -52,5 +52,5 @@ index 20e5ca6c6..920d77667 100644
/**
--
2.45.0
2.45.1

View File

@ -1,4 +1,4 @@
From 88515b6ab68264a4773dd07efbf0a9e01ab05d8b Mon Sep 17 00:00:00 2001
From 3f96a572feed66d34d20d1d416ffce7c14989a9c Mon Sep 17 00:00:00 2001
From: SpiritCroc <dev@spiritcroc.de>
Date: Tue, 18 Jan 2022 13:28:22 +0100
Subject: Disable sticky rooms
@ -25,5 +25,5 @@ index 267b9bd742..635f7bbcf1 100644
}
--
2.45.0
2.45.1

View File

@ -1,4 +1,4 @@
From 4acd52e0e85d0217b7203fa81bfa709ccaf6d2aa Mon Sep 17 00:00:00 2001
From ac11424ef182d789c3d9bb55feeb6910230d9dbe Mon Sep 17 00:00:00 2001
From: SpiritCroc <dev@spiritcroc.de>
Date: Sun, 5 May 2024 10:12:17 +0200
Subject: Bring back unified room list
@ -259,5 +259,5 @@ index d8b0488842..335097ccdb 100644
DefaultTagID.Conference,
DefaultTagID.Untagged,
--
2.45.0
2.45.1

View File

@ -1,4 +1,4 @@
From 5c361faad5325629b5db9bdd6c0e69218bc53132 Mon Sep 17 00:00:00 2001
From 53cb5e26d3798e3f6f79ea0cc0251b64165783da Mon Sep 17 00:00:00 2001
From: SpiritCroc <dev@spiritcroc.de>
Date: Sun, 17 Dec 2023 11:11:58 +0100
Subject: Don't sort muted rooms to bottom, I still want to see them.
@ -21,5 +21,5 @@ index 1b6472a018..8eae273a06 100644
/**
--
2.45.0
2.45.1

View File

@ -1,4 +1,4 @@
From f9fdcd1fa38c883a07ef1b519217a1927f40547d Mon Sep 17 00:00:00 2001
From 10b9e0d75503a248d4b6d5273c6a454d0a8cc26d Mon Sep 17 00:00:00 2001
From: Tulir Asokan <tulir@maunium.net>
Date: Tue, 12 Jul 2022 15:34:57 +0300
Subject: Add support for rendering captions in media messages
@ -105,5 +105,5 @@ index 75511756f5..a8e3b9cceb 100644
// file extension.
text = content.body;
--
2.45.0
2.45.1

View File

@ -1,4 +1,4 @@
From a4cded706d0e451517e66b300324ad085eb86105 Mon Sep 17 00:00:00 2001
From 5d0ef9b963d06d16660ddf8780e4c178d6904418 Mon Sep 17 00:00:00 2001
From: SpiritCroc <dev@spiritcroc.de>
Date: Thu, 14 Dec 2023 10:32:10 +0100
Subject: Don't preview reactions
@ -25,5 +25,5 @@ index a3c44084d5..f412cf3b89 100644
isState: false,
previewer: new PollStartEventPreview(),
--
2.45.0
2.45.1

View File

@ -1,4 +1,4 @@
From f71efc87d1e8fa87ea7e8bd4cb31bb938fe4e0fc Mon Sep 17 00:00:00 2001
From c5072d047ca79fff785a5d8a0c55b217c1294301 Mon Sep 17 00:00:00 2001
From: SpiritCroc <dev@spiritcroc.de>
Date: Wed, 17 Nov 2021 12:50:25 +0100
Subject: Hide the "mute" notification state the same way as the other states
@ -26,5 +26,5 @@ index 61f865e9fc..0695075cc8 100644
return (
--
2.45.0
2.45.1

View File

@ -1,4 +1,4 @@
From 2ffbb3cea351764ac33c347ba645262747bb962e Mon Sep 17 00:00:00 2001
From 62797661b2169a90cda8f8bd20505119629c8507 Mon Sep 17 00:00:00 2001
From: SpiritCroc <dev@spiritcroc.de>
Date: Fri, 10 May 2024 18:58:32 +0200
Subject: Allow muted rooms to render as unread
@ -21,5 +21,5 @@ index 1fb5e5ba4d..f9cb6ed026 100644
}
--
2.45.0
2.45.1

View File

@ -1,4 +1,4 @@
From 36270f5aed00f5da899486a59c4bf172f02e7a6c Mon Sep 17 00:00:00 2001
From 21924d5e5ed429c6a24493a04c675ff6569a09b8 Mon Sep 17 00:00:00 2001
From: SpiritCroc <dev@spiritcroc.de>
Date: Sun, 30 Aug 2020 15:33:01 +0200
Subject: Increase default visible tiles
@ -21,5 +21,5 @@ index afc93f3b01..6020b2148d 100644
public tilesWithPadding(n: number, paddingPx: number): number {
--
2.45.0
2.45.1

View File

@ -0,0 +1,92 @@
From d9f769129c789a2570bb5edc7cf4a639607c58b6 Mon Sep 17 00:00:00 2001
From: su-ex <codeworks@supercable.onl>
Date: Sun, 26 May 2024 10:43:36 +0200
Subject: Bring back showSpaceDMBadges setting, force-enabled for now
TODO settings UI
Co-authored-by: SpiritCroc <dev@spiritcroc.de>
---
src/settings/Settings.tsx | 5 +++++
src/stores/spaces/SpaceStore.ts | 25 +++++++++++++++++++++++++
2 files changed, 30 insertions(+)
diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx
index 49d96c7840..332e6a7b0a 100644
--- a/src/settings/Settings.tsx
+++ b/src/settings/Settings.tsx
@@ -214,6 +214,11 @@ export const SETTINGS: { [setting: string]: ISetting } = {
default: true,
controller: new ReloadOnChangeController(),
},
+ "Spaces.showSpaceDMBadges": {
+ displayName: _td("Show notification badges for People in Spaces"),
+ supportedLevels: LEVELS_ACCOUNT_SETTINGS,
+ default: true,
+ },
// SC settings end
"feature_video_rooms": {
isFeature: true,
diff --git a/src/stores/spaces/SpaceStore.ts b/src/stores/spaces/SpaceStore.ts
index 966b564d68..bda81e9d5f 100644
--- a/src/stores/spaces/SpaceStore.ts
+++ b/src/stores/spaces/SpaceStore.ts
@@ -162,9 +162,17 @@ export class SpaceStoreClass extends AsyncStoreWithClient<IState> {
/** Whether the feature flag is set for MSC3946 */
private _msc3946ProcessDynamicPredecessor: boolean = SettingsStore.getValue("feature_dynamic_room_predecessors");
+ // SC start
+ private _showSpaceDMBadges = true;
+ // SC end
+
public constructor() {
super(defaultDispatcher, {});
+ // SC start
+ SettingsStore.monitorSetting("Spaces.showSpaceDMBadges", null);
+ // SC end
+
SettingsStore.monitorSetting("Spaces.allRoomsInHome", null);
SettingsStore.monitorSetting("Spaces.enabledMetaSpaces", null);
SettingsStore.monitorSetting("Spaces.showPeopleInSpace", null);
@@ -200,6 +208,10 @@ export class SpaceStoreClass extends AsyncStoreWithClient<IState> {
return this._allRoomsInHome;
}
+ public get showSpaceDMBadges(): boolean { // SC
+ return this._showSpaceDMBadges;
+ }
+
public setActiveRoomInSpace(space: SpaceKey): void {
if (!isMetaSpace(space) && !this.matrixClient?.getRoom(space)?.isSpaceRoom()) return;
if (space !== this.activeSpace) this.setActiveSpace(space, false);
@@ -709,6 +721,10 @@ export class SpaceStoreClass extends AsyncStoreWithClient<IState> {
if (room.isSpaceRoom() || !flattenedRoomsForSpace.has(room.roomId)) return false;
+ if (this.showSpaceDMBadges) { // SC
+ return true;
+ }
+
if (dmBadgeSpace && DMRoomMap.shared().getUserIdForRoomId(room.roomId)) {
return s === dmBadgeSpace;
}
@@ -1285,6 +1301,15 @@ export class SpaceStoreClass extends AsyncStoreWithClient<IState> {
break;
}
+ case "Spaces.showSpaceDMBadges": { // SC
+ const newValue = SettingsStore.getValue("Spaces.showSpaceDMBadges");
+ if (this.showSpaceDMBadges !== newValue) {
+ this._showSpaceDMBadges = newValue;
+ this.rebuildSpaceHierarchy(); // rebuild everything
+ }
+ break;
+ }
+
case "Spaces.enabledMetaSpaces": {
const newValue = SettingsStore.getValue("Spaces.enabledMetaSpaces");
const enabledMetaSpaces = metaSpaceOrder.filter((k) => newValue[k]);
--
2.45.1