forked from github/schildichat-desktop
Upstream v1.11.84-rc.0: Get rid of matrix-react-sdk
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
From df9cbf4de43a3f8a5d4a539ab21c63230af629ea Mon Sep 17 00:00:00 2001
|
||||
From b3b4e755efb1851b4790cdedf230cf85f64d775d Mon Sep 17 00:00:00 2001
|
||||
From: su-ex <codeworks@supercable.onl>
|
||||
Date: Sun, 29 Nov 2020 23:30:59 +0100
|
||||
Subject: Change default login background
|
||||
@ -22103,10 +22103,10 @@ literal 0
|
||||
HcmV?d00001
|
||||
|
||||
diff --git a/src/components/views/auth/VectorAuthPage.tsx b/src/components/views/auth/VectorAuthPage.tsx
|
||||
index 6641f94133..2053903c03 100644
|
||||
index 969cc560a3..4636cfe808 100644
|
||||
--- a/src/components/views/auth/VectorAuthPage.tsx
|
||||
+++ b/src/components/views/auth/VectorAuthPage.tsx
|
||||
@@ -18,7 +18,7 @@ export default class VectorAuthPage extends React.PureComponent {
|
||||
@@ -18,7 +18,7 @@ export default class VectorAuthPage extends React.PureComponent<React.PropsWithC
|
||||
if (VectorAuthPage.welcomeBackgroundUrl) return VectorAuthPage.welcomeBackgroundUrl;
|
||||
|
||||
const brandingConfig = SdkConfig.getObject("branding");
|
@ -1,4 +1,4 @@
|
||||
From 7b6f836434f75fbb7d21277f4dd31c1f3166d315 Mon Sep 17 00:00:00 2001
|
||||
From fe40e94fc7092912bca454f1c2c197ca42c7dccd Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Sun, 27 Oct 2024 19:38:47 +0100
|
||||
Subject: Don't welcome to Element
|
@ -1,4 +1,4 @@
|
||||
From ffaaeb91e6d35ff59ac020680fdfa3fdadaa7de6 Mon Sep 17 00:00:00 2001
|
||||
From 4a593cab4f41b9ac0b07b43c3574d77d4d85238d Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Sun, 27 Oct 2024 19:55:30 +0100
|
||||
Subject: Stronger login background to ensure contrast of our icon with our bg
|
||||
@ -8,10 +8,10 @@ Subject: Stronger login background to ensure contrast of our icon with our bg
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/components/views/auth/VectorAuthPage.tsx b/src/components/views/auth/VectorAuthPage.tsx
|
||||
index 2053903c03..822db9da93 100644
|
||||
index 4636cfe808..05dcdbbbf7 100644
|
||||
--- a/src/components/views/auth/VectorAuthPage.tsx
|
||||
+++ b/src/components/views/auth/VectorAuthPage.tsx
|
||||
@@ -56,7 +56,7 @@ export default class VectorAuthPage extends React.PureComponent {
|
||||
@@ -56,7 +56,7 @@ export default class VectorAuthPage extends React.PureComponent<React.PropsWithC
|
||||
const modalContentStyle: React.CSSProperties = {
|
||||
display: "flex",
|
||||
zIndex: 1,
|
@ -1,4 +1,4 @@
|
||||
From 177e652388fbeef0113d3fa07f00de09f24f70dd Mon Sep 17 00:00:00 2001
|
||||
From 113e105d802f904e9cfdc3dca4cb6a74f4ae259a Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Sun, 27 Oct 2024 20:07:30 +0100
|
||||
Subject: Schildify login footer
|
||||
@ -8,7 +8,7 @@ Subject: Schildify login footer
|
||||
1 file changed, 4 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/components/views/auth/VectorAuthFooter.tsx b/src/components/views/auth/VectorAuthFooter.tsx
|
||||
index a81517b516..3828e5ad74 100644
|
||||
index 234c6b127b..44d41004a0 100644
|
||||
--- a/src/components/views/auth/VectorAuthFooter.tsx
|
||||
+++ b/src/components/views/auth/VectorAuthFooter.tsx
|
||||
@@ -14,9 +14,10 @@ import { _t } from "../../../languageHandler";
|
29
patches/element-web/0006-Disable-sticky-rooms.patch
Normal file
29
patches/element-web/0006-Disable-sticky-rooms.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From 89ffe82738128afc556bdbf5e07a1ed05640a78b 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
|
||||
|
||||
---
|
||||
src/stores/room-list/algorithms/Algorithm.ts | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/stores/room-list/algorithms/Algorithm.ts b/src/stores/room-list/algorithms/Algorithm.ts
|
||||
index c3450d70cf..e296676149 100644
|
||||
--- a/src/stores/room-list/algorithms/Algorithm.ts
|
||||
+++ b/src/stores/room-list/algorithms/Algorithm.ts
|
||||
@@ -159,8 +159,10 @@ export class Algorithm extends EventEmitter {
|
||||
this.recalculateActiveCallRooms(tagId);
|
||||
}
|
||||
|
||||
- private updateStickyRoom(val: Room | null): void {
|
||||
- this.doUpdateStickyRoom(val);
|
||||
+ private updateStickyRoom(val: Room) {
|
||||
+ // Schildi: we don't want it sticky
|
||||
+ this.doUpdateStickyRoom(null);
|
||||
+ //this.doUpdateStickyRoom(val);
|
||||
this._lastStickyRoom = null; // clear to indicate we're done changing
|
||||
}
|
||||
|
||||
--
|
||||
2.47.0
|
||||
|
263
patches/element-web/0007-Bring-back-unified-room-list.patch
Normal file
263
patches/element-web/0007-Bring-back-unified-room-list.patch
Normal file
@ -0,0 +1,263 @@
|
||||
From aa67c52dbb37da389722571f480f1d391598bb77 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
|
||||
|
||||
Remaining TODO:
|
||||
- Hook up setting to UI again (better with own SC-specific screen?)
|
||||
|
||||
Co-authored-by: su-ex <codeworks@supercable.onl>
|
||||
---
|
||||
src/components/views/rooms/RoomList.tsx | 39 +++++++++++++++++++-
|
||||
src/settings/Settings.tsx | 8 ++++
|
||||
src/stores/room-list/RoomListStore.ts | 19 +++++++++-
|
||||
src/stores/room-list/algorithms/Algorithm.ts | 20 ++++++++--
|
||||
src/stores/room-list/models.ts | 2 +
|
||||
5 files changed, 83 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/components/views/rooms/RoomList.tsx b/src/components/views/rooms/RoomList.tsx
|
||||
index e27b2ca03f..311a54d9d8 100644
|
||||
--- a/src/components/views/rooms/RoomList.tsx
|
||||
+++ b/src/components/views/rooms/RoomList.tsx
|
||||
@@ -72,11 +72,13 @@ interface IState {
|
||||
sublists: ITagMap;
|
||||
currentRoomId?: string;
|
||||
suggestedRooms: ISuggestedRoom[];
|
||||
+ unifiedRoomList: boolean;
|
||||
}
|
||||
|
||||
export const TAG_ORDER: TagID[] = [
|
||||
DefaultTagID.Invite,
|
||||
DefaultTagID.Favourite,
|
||||
+ DefaultTagID.Unified,
|
||||
DefaultTagID.DM,
|
||||
DefaultTagID.Untagged,
|
||||
DefaultTagID.Conference,
|
||||
@@ -89,6 +91,7 @@ export const TAG_ORDER: TagID[] = [
|
||||
// but we'd have to make sure that rooms you weren't in were hidden.
|
||||
];
|
||||
const ALWAYS_VISIBLE_TAGS: TagID[] = [DefaultTagID.DM, DefaultTagID.Untagged];
|
||||
+const ALWAYS_VISIBLE_UNIFIED_TAGS: TagID[] = [DefaultTagID.Unified];
|
||||
|
||||
interface ITagAesthetics {
|
||||
sectionLabel: TranslationKey;
|
||||
@@ -366,6 +369,17 @@ const UntaggedAuxButton: React.FC<IAuxButtonProps> = ({ tabIndex }) => {
|
||||
return null;
|
||||
};
|
||||
|
||||
+const UnifiedAuxButton: React.FC<IAuxButtonProps> = (iAuxButtonProps: IAuxButtonProps) => {
|
||||
+ return (
|
||||
+ <>
|
||||
+ {/* eslint-disable-next-line new-cap */}
|
||||
+ {DmAuxButton(iAuxButtonProps)}
|
||||
+ {/* eslint-disable-next-line new-cap */}
|
||||
+ {UntaggedAuxButton(iAuxButtonProps)}
|
||||
+ </>
|
||||
+ );
|
||||
+};
|
||||
+
|
||||
const TAG_AESTHETICS: TagAestheticsMap = {
|
||||
[DefaultTagID.Invite]: {
|
||||
sectionLabel: _td("action|invites_list"),
|
||||
@@ -383,6 +397,12 @@ const TAG_AESTHETICS: TagAestheticsMap = {
|
||||
defaultHidden: false,
|
||||
AuxButtonComponent: DmAuxButton,
|
||||
},
|
||||
+ [DefaultTagID.Unified]: {
|
||||
+ sectionLabel: _td("Normal priority"),
|
||||
+ isInvite: false,
|
||||
+ defaultHidden: false,
|
||||
+ AuxButtonComponent: UnifiedAuxButton,
|
||||
+ },
|
||||
[DefaultTagID.Conference]: {
|
||||
sectionLabel: _td("voip|metaspace_video_rooms|conference_room_section"),
|
||||
isInvite: false,
|
||||
@@ -421,6 +441,7 @@ const TAG_AESTHETICS: TagAestheticsMap = {
|
||||
|
||||
export default class RoomList extends React.PureComponent<IProps, IState> {
|
||||
private dispatcherRef?: string;
|
||||
+ private readonly unifiedRoomListWatcherRef: string;
|
||||
private treeRef = createRef<HTMLDivElement>();
|
||||
|
||||
public static contextType = MatrixClientContext;
|
||||
@@ -432,7 +453,14 @@ export default class RoomList extends React.PureComponent<IProps, IState> {
|
||||
this.state = {
|
||||
sublists: {},
|
||||
suggestedRooms: SpaceStore.instance.suggestedRooms,
|
||||
+ unifiedRoomList: SettingsStore.getValue("unifiedRoomList"),
|
||||
};
|
||||
+
|
||||
+ this.unifiedRoomListWatcherRef = SettingsStore.watchSetting(
|
||||
+ "unifiedRoomList",
|
||||
+ null,
|
||||
+ this.onUnifiedRoomListChange,
|
||||
+ );
|
||||
}
|
||||
|
||||
public componentDidMount(): void {
|
||||
@@ -447,9 +475,16 @@ export default class RoomList extends React.PureComponent<IProps, IState> {
|
||||
SpaceStore.instance.off(UPDATE_SUGGESTED_ROOMS, this.updateSuggestedRooms);
|
||||
RoomListStore.instance.off(LISTS_UPDATE_EVENT, this.updateLists);
|
||||
if (this.dispatcherRef) defaultDispatcher.unregister(this.dispatcherRef);
|
||||
+ SettingsStore.unwatchSetting(this.unifiedRoomListWatcherRef);
|
||||
SdkContextClass.instance.roomViewStore.off(UPDATE_EVENT, this.onRoomViewStoreUpdate);
|
||||
}
|
||||
|
||||
+ private onUnifiedRoomListChange = (): void => {
|
||||
+ this.setState({
|
||||
+ unifiedRoomList: SettingsStore.getValue("unifiedRoomList"),
|
||||
+ });
|
||||
+ };
|
||||
+
|
||||
private onRoomViewStoreUpdate = (): void => {
|
||||
this.setState({
|
||||
currentRoomId: SdkContextClass.instance.roomViewStore.getRoomId() ?? undefined,
|
||||
@@ -590,7 +625,9 @@ export default class RoomList extends React.PureComponent<IProps, IState> {
|
||||
const aesthetics = TAG_AESTHETICS[orderedTagId];
|
||||
if (!aesthetics) throw new Error(`Tag ${orderedTagId} does not have aesthetics`);
|
||||
|
||||
- let alwaysVisible = ALWAYS_VISIBLE_TAGS.includes(orderedTagId);
|
||||
+ let alwaysVisible = (
|
||||
+ this.state.unifiedRoomList ? ALWAYS_VISIBLE_UNIFIED_TAGS : ALWAYS_VISIBLE_TAGS
|
||||
+ ).includes(orderedTagId);
|
||||
if (
|
||||
(this.props.activeSpace === MetaSpace.Favourites && orderedTagId !== DefaultTagID.Favourite) ||
|
||||
(this.props.activeSpace === MetaSpace.People && orderedTagId !== DefaultTagID.DM) ||
|
||||
diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx
|
||||
index 1c27f03e88..ae4b0ea644 100644
|
||||
--- a/src/settings/Settings.tsx
|
||||
+++ b/src/settings/Settings.tsx
|
||||
@@ -192,6 +192,14 @@ export interface IFeature extends Omit<IBaseSetting<boolean>, "isFeature"> {
|
||||
export type ISetting = IBaseSetting | IFeature;
|
||||
|
||||
export const SETTINGS: { [setting: string]: ISetting } = {
|
||||
+ // SC settings start
|
||||
+ "unifiedRoomList": {
|
||||
+ supportedLevels: LEVELS_ACCOUNT_SETTINGS,
|
||||
+ displayName: _td("Show people and rooms in a combined list"),
|
||||
+ default: true,
|
||||
+ controller: new ReloadOnChangeController(),
|
||||
+ },
|
||||
+ // SC settings end
|
||||
"feature_video_rooms": {
|
||||
isFeature: true,
|
||||
labsGroup: LabGroup.VoiceAndVideo,
|
||||
diff --git a/src/stores/room-list/RoomListStore.ts b/src/stores/room-list/RoomListStore.ts
|
||||
index 53377e0a01..381187b85c 100644
|
||||
--- a/src/stores/room-list/RoomListStore.ts
|
||||
+++ b/src/stores/room-list/RoomListStore.ts
|
||||
@@ -500,6 +500,9 @@ export class RoomListStoreClass extends AsyncStoreWithClient<IState> implements
|
||||
this.setAndPersistListOrder(tag, listOrder);
|
||||
}
|
||||
}
|
||||
+
|
||||
+ // SC: Unified list for DMs and groups
|
||||
+ this.algorithm.setUnifiedRoomList(SettingsStore.getValue("unifiedRoomList"));
|
||||
}
|
||||
|
||||
private onAlgorithmListUpdated = (forceUpdate: boolean): void => {
|
||||
@@ -613,7 +616,21 @@ export class RoomListStoreClass extends AsyncStoreWithClient<IState> implements
|
||||
*/
|
||||
public getTagsForRoom(room: Room): TagID[] {
|
||||
const algorithmTags = this.algorithm.getTagsForRoom(room);
|
||||
- if (!algorithmTags) return [DefaultTagID.Untagged];
|
||||
+ if (!algorithmTags) {
|
||||
+ if (SettingsStore.getValue("unifiedRoomList")) {
|
||||
+ return [DefaultTagID.Unified];
|
||||
+ } else {
|
||||
+ return [DefaultTagID.Untagged];
|
||||
+ }
|
||||
+ }
|
||||
+ const dmTagIndex = algorithmTags.indexOf(DefaultTagID.DM);
|
||||
+ if (dmTagIndex !== -1) {
|
||||
+ algorithmTags[dmTagIndex] = DefaultTagID.Unified;
|
||||
+ }
|
||||
+ const untaggedTagIndex = algorithmTags.indexOf(DefaultTagID.Untagged);
|
||||
+ if (untaggedTagIndex !== -1) {
|
||||
+ algorithmTags[untaggedTagIndex] = DefaultTagID.Unified;
|
||||
+ }
|
||||
return algorithmTags;
|
||||
}
|
||||
|
||||
diff --git a/src/stores/room-list/algorithms/Algorithm.ts b/src/stores/room-list/algorithms/Algorithm.ts
|
||||
index e296676149..06147137b3 100644
|
||||
--- a/src/stores/room-list/algorithms/Algorithm.ts
|
||||
+++ b/src/stores/room-list/algorithms/Algorithm.ts
|
||||
@@ -75,6 +75,7 @@ export class Algorithm extends EventEmitter {
|
||||
* Set to true to suspend emissions of algorithm updates.
|
||||
*/
|
||||
public updatesInhibited = false;
|
||||
+ private unifiedRoomList: boolean = true;
|
||||
|
||||
public start(): void {
|
||||
CallStore.instance.on(CallStoreEvent.ConnectedCalls, this.onConnectedCalls);
|
||||
@@ -106,6 +107,10 @@ export class Algorithm extends EventEmitter {
|
||||
return this._cachedRooms;
|
||||
}
|
||||
|
||||
+ public setUnifiedRoomList(unifiedRoomList: boolean): void {
|
||||
+ this.unifiedRoomList = unifiedRoomList;
|
||||
+ }
|
||||
+
|
||||
/**
|
||||
* Awaitable version of the sticky room setter.
|
||||
* @param val The new room to sticky.
|
||||
@@ -513,7 +518,10 @@ export class Algorithm extends EventEmitter {
|
||||
}
|
||||
|
||||
if (!inTag) {
|
||||
- if (DMRoomMap.shared().getUserIdForRoomId(room.roomId)) {
|
||||
+ if (this.unifiedRoomList) {
|
||||
+ // SC: Unified room list for DMs and groups
|
||||
+ newTags[DefaultTagID.Unified].push(room);
|
||||
+ } else if (DMRoomMap.shared().getUserIdForRoomId(room.roomId)) {
|
||||
newTags[DefaultTagID.DM].push(room);
|
||||
} else {
|
||||
newTags[DefaultTagID.Untagged].push(room);
|
||||
@@ -557,7 +565,13 @@ export class Algorithm extends EventEmitter {
|
||||
tags.push(...this.getTagsOfJoinedRoom(room));
|
||||
}
|
||||
|
||||
- if (!tags.length) tags.push(DefaultTagID.Untagged);
|
||||
+ if (!tags.length) {
|
||||
+ if (this.unifiedRoomList) {
|
||||
+ tags.push(DefaultTagID.Unified);
|
||||
+ } else {
|
||||
+ tags.push(DefaultTagID.Untagged);
|
||||
+ }
|
||||
+ }
|
||||
|
||||
return tags;
|
||||
}
|
||||
@@ -567,7 +581,7 @@ export class Algorithm extends EventEmitter {
|
||||
|
||||
if (tags.length === 0) {
|
||||
// Check to see if it's a DM if it isn't anything else
|
||||
- if (DMRoomMap.shared().getUserIdForRoomId(room.roomId)) {
|
||||
+ if (DMRoomMap.shared().getUserIdForRoomId(room.roomId) && !this.unifiedRoomList) {
|
||||
tags = [DefaultTagID.DM];
|
||||
}
|
||||
}
|
||||
diff --git a/src/stores/room-list/models.ts b/src/stores/room-list/models.ts
|
||||
index 50cecda665..8efc2d040d 100644
|
||||
--- a/src/stores/room-list/models.ts
|
||||
+++ b/src/stores/room-list/models.ts
|
||||
@@ -13,6 +13,7 @@ export enum DefaultTagID {
|
||||
LowPriority = "m.lowpriority",
|
||||
Favourite = "m.favourite",
|
||||
DM = "im.vector.fake.direct",
|
||||
+ Unified = "chat.schildi.fake.unified",
|
||||
Conference = "im.vector.fake.conferences",
|
||||
ServerNotice = "m.server_notice",
|
||||
Suggested = "im.vector.fake.suggested",
|
||||
@@ -21,6 +22,7 @@ export enum DefaultTagID {
|
||||
export const OrderedDefaultTagIDs = [
|
||||
DefaultTagID.Invite,
|
||||
DefaultTagID.Favourite,
|
||||
+ DefaultTagID.Unified,
|
||||
DefaultTagID.DM,
|
||||
DefaultTagID.Conference,
|
||||
DefaultTagID.Untagged,
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,25 @@
|
||||
From 52a8331e22a92e72cd470924a898bb5dc0050c12 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.
|
||||
|
||||
---
|
||||
.../room-list/algorithms/list-ordering/OrderingAlgorithm.ts | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/stores/room-list/algorithms/list-ordering/OrderingAlgorithm.ts b/src/stores/room-list/algorithms/list-ordering/OrderingAlgorithm.ts
|
||||
index 67ee1ca084..67dcaa3855 100644
|
||||
--- a/src/stores/room-list/algorithms/list-ordering/OrderingAlgorithm.ts
|
||||
+++ b/src/stores/room-list/algorithms/list-ordering/OrderingAlgorithm.ts
|
||||
@@ -38,7 +38,7 @@ export abstract class OrderingAlgorithm {
|
||||
}
|
||||
|
||||
public get isMutedToBottom(): boolean {
|
||||
- return this.sortingAlgorithm === SortAlgorithm.Recent;
|
||||
+ return this.sortingAlgorithm === SortAlgorithm.Recent && false;
|
||||
}
|
||||
|
||||
/**
|
||||
--
|
||||
2.47.0
|
||||
|
29
patches/element-web/0009-Don-t-preview-reactions.patch
Normal file
29
patches/element-web/0009-Don-t-preview-reactions.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From 6b180bc740d00b2c12e7484611436ed0a0441d91 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
|
||||
|
||||
---
|
||||
src/stores/room-list/MessagePreviewStore.ts | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/src/stores/room-list/MessagePreviewStore.ts b/src/stores/room-list/MessagePreviewStore.ts
|
||||
index e0e06ec980..7ee27f8402 100644
|
||||
--- a/src/stores/room-list/MessagePreviewStore.ts
|
||||
+++ b/src/stores/room-list/MessagePreviewStore.ts
|
||||
@@ -57,10 +57,12 @@ const PREVIEWS: Record<
|
||||
isState: false,
|
||||
previewer: new StickerEventPreview(),
|
||||
},
|
||||
+ /*
|
||||
"m.reaction": {
|
||||
isState: false,
|
||||
previewer: new ReactionEventPreview(),
|
||||
},
|
||||
+ */
|
||||
[M_POLL_START.name]: {
|
||||
isState: false,
|
||||
previewer: new PollStartEventPreview(),
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,30 @@
|
||||
From c8326bf3b2024cb21dae646d552f440e8be31a92 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
|
||||
|
||||
This can get in the way of the "marked as unread" icon otherwise.
|
||||
Furthermore, I didn't really like it showing there persistently either
|
||||
way.
|
||||
---
|
||||
src/components/views/rooms/RoomTile.tsx | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/components/views/rooms/RoomTile.tsx b/src/components/views/rooms/RoomTile.tsx
|
||||
index 93fb42f447..09df8eaac9 100644
|
||||
--- a/src/components/views/rooms/RoomTile.tsx
|
||||
+++ b/src/components/views/rooms/RoomTile.tsx
|
||||
@@ -304,7 +304,9 @@ export class RoomTile extends React.PureComponent<ClassProps, State> {
|
||||
|
||||
// Only show the icon by default if the room is overridden to muted.
|
||||
// TODO: [FTUE Notifications] Probably need to detect global mute state
|
||||
- mx_RoomTile_notificationsButton_show: state === RoomNotifState.Mute,
|
||||
+ //mx_RoomTile_notificationsButton_show: state === RoomNotifState.Mute,
|
||||
+ // SchildiChat: never show the icon by default. This gets in the way of the "marked as unread" icon.
|
||||
+ mx_RoomTile_notificationsButton_show: false,
|
||||
});
|
||||
|
||||
return (
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,25 @@
|
||||
From ad6ae2391b4e9ffafcdfd9a9cd369e77714f8e92 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
|
||||
|
||||
---
|
||||
src/RoomNotifs.ts | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/RoomNotifs.ts b/src/RoomNotifs.ts
|
||||
index 7c281d0d2d..f06be85437 100644
|
||||
--- a/src/RoomNotifs.ts
|
||||
+++ b/src/RoomNotifs.ts
|
||||
@@ -255,7 +255,7 @@ export function determineUnreadState(
|
||||
return { symbol: "!", count: 1, level: NotificationLevel.Highlight };
|
||||
}
|
||||
|
||||
- if (getRoomNotifsState(room.client, room.roomId) === RoomNotifState.Mute) {
|
||||
+ if (false && getRoomNotifsState(room.client, room.roomId) === RoomNotifState.Mute) {
|
||||
return { symbol: null, count: 0, level: NotificationLevel.None };
|
||||
}
|
||||
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,25 @@
|
||||
From bdd02fd32781cbd9f592bee2dece18e758a4b0a3 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
|
||||
|
||||
---
|
||||
src/stores/room-list/ListLayout.ts | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/stores/room-list/ListLayout.ts b/src/stores/room-list/ListLayout.ts
|
||||
index ff60309e08..275b6d330b 100644
|
||||
--- a/src/stores/room-list/ListLayout.ts
|
||||
+++ b/src/stores/room-list/ListLayout.ts
|
||||
@@ -74,7 +74,7 @@ export class ListLayout {
|
||||
|
||||
public get defaultVisibleTiles(): number {
|
||||
// This number is what "feels right", and mostly subject to design's opinion.
|
||||
- return 8;
|
||||
+ return 50;
|
||||
}
|
||||
|
||||
public tilesWithPadding(n: number, paddingPx: number): number {
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,92 @@
|
||||
From 1a73e666d193a583aa025fb75a9afdf59f1d36fa 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 ae4b0ea644..12d9965cf1 100644
|
||||
--- a/src/settings/Settings.tsx
|
||||
+++ b/src/settings/Settings.tsx
|
||||
@@ -199,6 +199,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 90358f3310..60df05478a 100644
|
||||
--- a/src/stores/spaces/SpaceStore.ts
|
||||
+++ b/src/stores/spaces/SpaceStore.ts
|
||||
@@ -154,9 +154,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);
|
||||
@@ -192,6 +200,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);
|
||||
@@ -701,6 +713,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;
|
||||
}
|
||||
@@ -1277,6 +1293,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.47.0
|
||||
|
@ -0,0 +1,134 @@
|
||||
From 911b4438f6f2240e99d3a80aed35ff3e4f1d70ff Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Wed, 29 May 2024 19:32:42 +0200
|
||||
Subject: Squashed: Freeform reactions from tadzik/freeform-reactions-upstream
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
commit 9eea56b0080db3720efa49b457707bcde3be6474
|
||||
Merge: 06f81c9662 8570f16e31
|
||||
Author: Tadeusz Sośnierz <tadeusz@sosnierz.com>
|
||||
Date: Tue Jun 20 09:57:19 2023 +0200
|
||||
|
||||
Merge branch 'develop' into tadzik/freeform-reactions-upstream
|
||||
|
||||
commit 06f81c9662fbe033b4eac859d7e14e0ab24a6e91
|
||||
Merge: ad4fef85b1 0d6a550c33
|
||||
Author: Michael Telatynski <7t3chguy@gmail.com>
|
||||
Date: Wed Aug 31 09:06:49 2022 +0100
|
||||
|
||||
Merge branch 'develop' into tadzik/freeform-reactions
|
||||
|
||||
commit ad4fef85b160087b8017b9ae9cf9aebfd5348f41
|
||||
Merge: 689b57c0b9 5aae974e93
|
||||
Author: Tadeusz Sośnierz <tadzik@tadzik.net>
|
||||
Date: Sun Aug 28 10:11:48 2022 +0200
|
||||
|
||||
Merge branch 'develop' into tadzik/freeform-reactions
|
||||
|
||||
commit 689b57c0b91e12907a8dbc3fac3ed10302a11e4a
|
||||
Author: Tadeusz Sośnierz <tadeusz@sosnierz.com>
|
||||
Date: Fri May 20 10:35:06 2022 +0200
|
||||
|
||||
Fix conflict resolution fail in EmojiPicker
|
||||
|
||||
commit 70a8e212b748584949b37bc99b72acffce2fd148
|
||||
Merge: 215df55f13 a0cdc93642
|
||||
Author: Tadeusz Sośnierz <tadeusz@sosnierz.com>
|
||||
Date: Fri May 20 10:25:17 2022 +0200
|
||||
|
||||
Merge branch 'develop' into tadzik/freeform-reactions-upstream
|
||||
|
||||
commit 215df55f13162bdc8eb13da5219763c56f560dd0
|
||||
Author: Tadeusz Sośnierz <tadeusz@sosnierz.com>
|
||||
Date: Tue Aug 17 16:30:06 2021 +0200
|
||||
|
||||
Disable freeform emoji reactions in the message composer
|
||||
|
||||
commit 6bb8263007e077d22929fcc1fb439d94a4f15c6f
|
||||
Author: Tadeusz Sośnierz <tadeusz@sosnierz.com>
|
||||
Date: Tue Aug 17 12:12:28 2021 +0200
|
||||
|
||||
Add more typing to EmojiPicker
|
||||
|
||||
commit b2a1728318a8a5496345797995c1ec09ae3f88e6
|
||||
Author: Tadeusz Sośnierz <tadeusz@sosnierz.com>
|
||||
Date: Tue Aug 17 11:52:35 2021 +0200
|
||||
|
||||
Make free-form reaction button translatable
|
||||
|
||||
commit f4adaf00b805baba454fbceb41cc5c081ec886a7
|
||||
Author: Tadeusz Sośnierz <tadeusz@sosnierz.com>
|
||||
Date: Tue Aug 17 11:29:22 2021 +0200
|
||||
|
||||
Allow sending free-form reactions
|
||||
|
||||
Signed-off-by: Tadeusz Sośnierz <tadeusz@sosnierz.com>
|
||||
---
|
||||
src/components/views/emojipicker/EmojiPicker.tsx | 15 +++++++++++++++
|
||||
.../views/emojipicker/ReactionPicker.tsx | 1 +
|
||||
2 files changed, 16 insertions(+)
|
||||
|
||||
diff --git a/src/components/views/emojipicker/EmojiPicker.tsx b/src/components/views/emojipicker/EmojiPicker.tsx
|
||||
index 4806ad4216..7d4a4353e2 100644
|
||||
--- a/src/components/views/emojipicker/EmojiPicker.tsx
|
||||
+++ b/src/components/views/emojipicker/EmojiPicker.tsx
|
||||
@@ -17,6 +17,7 @@ import Header from "./Header";
|
||||
import Search from "./Search";
|
||||
import Preview from "./Preview";
|
||||
import QuickReactions from "./QuickReactions";
|
||||
+import AccessibleButton from '../elements/AccessibleButton';
|
||||
import Category, { CategoryKey, ICategory } from "./Category";
|
||||
import { filterBoolean } from "../../../utils/arrays";
|
||||
import {
|
||||
@@ -37,6 +38,7 @@ export const EMOJIS_PER_ROW = 8;
|
||||
const ZERO_WIDTH_JOINER = "\u200D";
|
||||
|
||||
interface IProps {
|
||||
+ allowUnlisted?: boolean;
|
||||
selectedEmojis?: Set<string>;
|
||||
onChoose(unicode: string): boolean;
|
||||
onFinished(): void;
|
||||
@@ -341,6 +343,10 @@ class EmojiPicker extends React.Component<IProps, IState> {
|
||||
}
|
||||
};
|
||||
|
||||
+ private reactWith = (reaction: string): void => {
|
||||
+ this.props.onChoose(reaction);
|
||||
+ };
|
||||
+
|
||||
private static categoryHeightForEmojiCount(count: number): number {
|
||||
if (count === 0) {
|
||||
return 0;
|
||||
@@ -396,6 +402,15 @@ class EmojiPicker extends React.Component<IProps, IState> {
|
||||
return categoryElement;
|
||||
})}
|
||||
</AutoHideScrollbar>
|
||||
+ {
|
||||
+ (this.props.allowUnlisted && this.state.filter) &&
|
||||
+ <AccessibleButton
|
||||
+ kind="link"
|
||||
+ onClick={() => this.reactWith(this.state.filter)}
|
||||
+ >
|
||||
+ { _t('React with "%(reaction)s"', { reaction: this.state.filter }) }
|
||||
+ </AccessibleButton>
|
||||
+ }
|
||||
{this.state.previewEmoji ? (
|
||||
<Preview emoji={this.state.previewEmoji} />
|
||||
) : (
|
||||
diff --git a/src/components/views/emojipicker/ReactionPicker.tsx b/src/components/views/emojipicker/ReactionPicker.tsx
|
||||
index 2c2eb442a0..62bfd2ea0f 100644
|
||||
--- a/src/components/views/emojipicker/ReactionPicker.tsx
|
||||
+++ b/src/components/views/emojipicker/ReactionPicker.tsx
|
||||
@@ -123,6 +123,7 @@ class ReactionPicker extends React.Component<IProps, IState> {
|
||||
public render(): React.ReactNode {
|
||||
return (
|
||||
<EmojiPicker
|
||||
+ allowUnlisted={true}
|
||||
onChoose={this.onChoose}
|
||||
isEmojiDisabled={this.isEmojiDisabled}
|
||||
onFinished={this.props.onFinished}
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,32 @@
|
||||
From 3d8a7358ea859b70bd713e758cb3efc273eb56ef Mon Sep 17 00:00:00 2001
|
||||
From: su-ex <codeworks@supercable.onl>
|
||||
Date: Sat, 22 Apr 2023 12:15:18 +0200
|
||||
Subject: Allow reactions to take more space
|
||||
|
||||
---
|
||||
res/css/views/messages/_ReactionsRowButton.pcss | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/res/css/views/messages/_ReactionsRowButton.pcss b/res/css/views/messages/_ReactionsRowButton.pcss
|
||||
index dd9d7ddb47..9ebe95021e 100644
|
||||
--- a/res/css/views/messages/_ReactionsRowButton.pcss
|
||||
+++ b/res/css/views/messages/_ReactionsRowButton.pcss
|
||||
@@ -14,6 +14,7 @@ Please see LICENSE files in the repository root for full details.
|
||||
background-color: var(--cpd-color-gray-200);
|
||||
user-select: none;
|
||||
align-items: center;
|
||||
+ max-width: calc(100% - 40px);;
|
||||
|
||||
&.mx_ReactionsRowButton_selected {
|
||||
background-color: $accent-300;
|
||||
@@ -25,7 +26,6 @@ Please see LICENSE files in the repository root for full details.
|
||||
}
|
||||
|
||||
.mx_ReactionsRowButton_content {
|
||||
- max-width: 100px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,79 @@
|
||||
From 89e083af2be11b17c756c6078a43ce1c6c305cc2 Mon Sep 17 00:00:00 2001
|
||||
From: su-ex <codeworks@supercable.onl>
|
||||
Date: Thu, 30 May 2024 14:35:16 +0200
|
||||
Subject: On space switch don't automatically show last opened room
|
||||
|
||||
---
|
||||
src/components/structures/MatrixChat.tsx | 18 +++++++++++++++++-
|
||||
src/settings/Settings.tsx | 6 ++++++
|
||||
src/stores/spaces/SpaceStore.ts | 1 +
|
||||
3 files changed, 24 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/components/structures/MatrixChat.tsx b/src/components/structures/MatrixChat.tsx
|
||||
index d0edcccd4f..3146200c68 100644
|
||||
--- a/src/components/structures/MatrixChat.tsx
|
||||
+++ b/src/components/structures/MatrixChat.tsx
|
||||
@@ -1457,7 +1457,15 @@ export default class MatrixChat extends React.PureComponent<IProps, IState> {
|
||||
if (this.screenAfterLogin && this.screenAfterLogin.screen) {
|
||||
this.showScreen(this.screenAfterLogin.screen, this.screenAfterLogin.params);
|
||||
this.screenAfterLogin = undefined;
|
||||
- } else if (localStorage && localStorage.getItem("mx_last_room_id")) {
|
||||
+ } else if (
|
||||
+ !SettingsStore.getValue("Spaces.returnToPreviouslyOpenedRoom") &&
|
||||
+ localStorage &&
|
||||
+ localStorage.getItem("mx_active_space") &&
|
||||
+ localStorage.getItem("mx_active_space")[0] === "!"
|
||||
+ ) {
|
||||
+ // SC: Show the last viewed space
|
||||
+ this.viewLastSpace();
|
||||
+ } else if (SettingsStore.getValue("Spaces.returnToPreviouslyOpenedRoom") && localStorage && localStorage.getItem("mx_last_room_id")) {
|
||||
// Before defaulting to directory, show the last viewed room
|
||||
this.viewLastRoom();
|
||||
} else {
|
||||
@@ -1469,6 +1477,14 @@ export default class MatrixChat extends React.PureComponent<IProps, IState> {
|
||||
}
|
||||
}
|
||||
|
||||
+ private viewLastSpace(): void { // SC
|
||||
+ // SC-ToDo: Make this work for meta spaces
|
||||
+ dis.dispatch({
|
||||
+ action: Action.ViewRoom,
|
||||
+ room_id: localStorage.getItem("mx_active_space"),
|
||||
+ });
|
||||
+ }
|
||||
+
|
||||
private viewLastRoom(): void {
|
||||
dis.dispatch<ViewRoomPayload>({
|
||||
action: Action.ViewRoom,
|
||||
diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx
|
||||
index 12d9965cf1..3e9fb95799 100644
|
||||
--- a/src/settings/Settings.tsx
|
||||
+++ b/src/settings/Settings.tsx
|
||||
@@ -204,6 +204,12 @@ export const SETTINGS: { [setting: string]: ISetting } = {
|
||||
supportedLevels: LEVELS_ACCOUNT_SETTINGS,
|
||||
default: true,
|
||||
},
|
||||
+ "Spaces.returnToPreviouslyOpenedRoom": {
|
||||
+ displayName: _td("Return to the room previously opened in a space"),
|
||||
+ description: _td("If disabled, the space overview will be shown when switching to another space."),
|
||||
+ supportedLevels: LEVELS_ACCOUNT_SETTINGS,
|
||||
+ default: false,
|
||||
+ },
|
||||
// SC settings end
|
||||
"feature_video_rooms": {
|
||||
isFeature: true,
|
||||
diff --git a/src/stores/spaces/SpaceStore.ts b/src/stores/spaces/SpaceStore.ts
|
||||
index 60df05478a..0be7ba190a 100644
|
||||
--- a/src/stores/spaces/SpaceStore.ts
|
||||
+++ b/src/stores/spaces/SpaceStore.ts
|
||||
@@ -265,6 +265,7 @@ export class SpaceStoreClass extends AsyncStoreWithClient<IState> {
|
||||
// else if the last viewed room in this space is joined then view that
|
||||
// else view space home or home depending on what is being clicked on
|
||||
if (
|
||||
+ SettingsStore.getValue("Spaces.returnToPreviouslyOpenedRoom") &&
|
||||
roomId &&
|
||||
cliSpace?.getMyMembership() !== KnownMembership.Invite &&
|
||||
this.matrixClient.getRoom(roomId)?.getMyMembership() === KnownMembership.Join &&
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,24 @@
|
||||
From ddf0d3e26a63b1c3602a78dc3f2253f170e93b90 Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Tue, 9 Aug 2022 09:32:19 +0200
|
||||
Subject: Exclude spaces from breadcrumbs
|
||||
|
||||
---
|
||||
src/stores/BreadcrumbsStore.ts | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/stores/BreadcrumbsStore.ts b/src/stores/BreadcrumbsStore.ts
|
||||
index 9859f24015..957b54286c 100644
|
||||
--- a/src/stores/BreadcrumbsStore.ts
|
||||
+++ b/src/stores/BreadcrumbsStore.ts
|
||||
@@ -137,6 +137,7 @@ export class BreadcrumbsStore extends AsyncStoreWithClient<IState> {
|
||||
}
|
||||
|
||||
private async appendRoom(room: Room): Promise<void> {
|
||||
+ if (room.isSpaceRoom()) return;
|
||||
let updated = false;
|
||||
const rooms = (this.state.rooms || []).slice(); // cheap clone
|
||||
const msc3946ProcessDynamicPredecessor = SettingsStore.getValue("feature_dynamic_room_predecessors");
|
||||
--
|
||||
2.47.0
|
||||
|
24
patches/element-web/0018-Stop-the-search-bar-wobble.patch
Normal file
24
patches/element-web/0018-Stop-the-search-bar-wobble.patch
Normal file
@ -0,0 +1,24 @@
|
||||
From 684ed334d998c827cfadfdf1c5f46e5b6db722bc Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Mon, 19 Aug 2024 20:27:33 +0200
|
||||
Subject: Stop the search bar wobble
|
||||
|
||||
---
|
||||
res/css/_common.pcss | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/res/css/_common.pcss b/res/css/_common.pcss
|
||||
index 05a3dac067..7861af6381 100644
|
||||
--- a/res/css/_common.pcss
|
||||
+++ b/res/css/_common.pcss
|
||||
@@ -181,6 +181,7 @@ input[type="search"].mx_textinput_icon {
|
||||
padding-left: 36px;
|
||||
background-repeat: no-repeat;
|
||||
background-position: 10px center;
|
||||
+ min-height: 33px;
|
||||
}
|
||||
|
||||
/* FIXME THEME - Tint by CSS rather than referencing a duplicate asset */
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,24 @@
|
||||
From fb1f422cbea4bb050088e5dbb02c342e70a2aebb Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Sun, 13 Oct 2024 11:23:54 +0200
|
||||
Subject: Import SC compound theme overrides
|
||||
|
||||
---
|
||||
res/css/_common.pcss | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/res/css/_common.pcss b/res/css/_common.pcss
|
||||
index 7861af6381..f7a660a339 100644
|
||||
--- a/res/css/_common.pcss
|
||||
+++ b/res/css/_common.pcss
|
||||
@@ -11,6 +11,7 @@ Please see LICENSE files in the repository root for full details.
|
||||
|
||||
@import url("@vector-im/compound-design-tokens/assets/web/css/compound-design-tokens.css") layer(compound);
|
||||
@import url("@vector-im/compound-web/dist/style.css");
|
||||
+@import "./sc-cpd-overrides.css";
|
||||
@import "./_font-sizes.pcss";
|
||||
@import "./_animations.pcss";
|
||||
@import "./_spacing.pcss";
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,26 @@
|
||||
From da372cc9cf48128a4918917298c3904f0773e7ae Mon Sep 17 00:00:00 2001
|
||||
From: su-ex <codeworks@supercable.onl>
|
||||
Date: Tue, 7 Sep 2021 19:41:52 +0200
|
||||
Subject: No damn avatar background in room list
|
||||
|
||||
---
|
||||
src/components/structures/BackdropPanel.tsx | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/src/components/structures/BackdropPanel.tsx b/src/components/structures/BackdropPanel.tsx
|
||||
index 80c21235cc..a9c464f4b2 100644
|
||||
--- a/src/components/structures/BackdropPanel.tsx
|
||||
+++ b/src/components/structures/BackdropPanel.tsx
|
||||
@@ -13,6 +13,9 @@ interface IProps {
|
||||
}
|
||||
|
||||
export const BackdropPanel: React.FC<IProps> = ({ backgroundImage, blurMultiplier }) => {
|
||||
+ // SC: no damn avatar background in room list
|
||||
+ return null;
|
||||
+
|
||||
if (!backgroundImage) return null;
|
||||
|
||||
const styles: CSSProperties = {};
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,29 @@
|
||||
From 0fa53f5f6b26b88aed25ab425ba04ebc28509684 Mon Sep 17 00:00:00 2001
|
||||
From: su-ex <codeworks@supercable.onl>
|
||||
Date: Tue, 22 Dec 2020 19:16:28 +0100
|
||||
Subject: No red messages in 1:1 chats Close SchildiChat/schildichat-desktop#13
|
||||
|
||||
---
|
||||
src/components/views/rooms/EventTile.tsx | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/src/components/views/rooms/EventTile.tsx b/src/components/views/rooms/EventTile.tsx
|
||||
index eca61f7d22..59dd12e7ab 100644
|
||||
--- a/src/components/views/rooms/EventTile.tsx
|
||||
+++ b/src/components/views/rooms/EventTile.tsx
|
||||
@@ -683,6 +683,12 @@ export class UnwrappedEventTile extends React.Component<EventTileProps, IState>
|
||||
return false;
|
||||
}
|
||||
|
||||
+ // don't show highlights in 1:1 rooms
|
||||
+ const room = cli.getRoom(this.props.mxEvent.getRoomId());
|
||||
+ if (room && room.currentState.getJoinedMemberCount() === 2) {
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
return !!(actions?.tweaks.highlight || previousActions?.tweaks.highlight);
|
||||
}
|
||||
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,61 @@
|
||||
From 6c031a5258cc31485b889b5487d5e44ebac2c8de Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Sun, 13 Oct 2024 13:26:16 +0200
|
||||
Subject: Always apply corner radius to all edges of the bubble
|
||||
|
||||
---
|
||||
res/css/views/rooms/_EventBubbleTile.pcss | 10 ++++++----
|
||||
1 file changed, 6 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/res/css/views/rooms/_EventBubbleTile.pcss b/res/css/views/rooms/_EventBubbleTile.pcss
|
||||
index 3a42cde9bb..a5f5480010 100644
|
||||
--- a/res/css/views/rooms/_EventBubbleTile.pcss
|
||||
+++ b/res/css/views/rooms/_EventBubbleTile.pcss
|
||||
@@ -283,6 +283,8 @@ Please see LICENSE files in the repository root for full details.
|
||||
margin-inline: var(--EventTile_bubble_line-margin-inline-start) var(--EventTile_bubble_line-margin-inline-end);
|
||||
border-top-left-radius: var(--cornerRadius);
|
||||
border-top-right-radius: var(--cornerRadius);
|
||||
+ border-bottom-left-radius: var(--cornerRadius);
|
||||
+ border-bottom-right-radius: var(--cornerRadius);
|
||||
|
||||
/* the selector here is quite weird because timestamps can appear linked & unlinked and in different places */
|
||||
/* in the DOM depending on the specific rendering context */
|
||||
@@ -377,7 +379,7 @@ Please see LICENSE files in the repository root for full details.
|
||||
}
|
||||
|
||||
&.mx_EventTile_continuation[data-self="false"] .mx_EventTile_line {
|
||||
- border-top-left-radius: 0;
|
||||
+ //border-top-left-radius: 0;
|
||||
|
||||
.mx_MImageBody .mx_MImageBody_thumbnail_container,
|
||||
.mx_MVideoBody .mx_MVideoBody_container,
|
||||
@@ -385,7 +387,7 @@ Please see LICENSE files in the repository root for full details.
|
||||
.mx_MediaBody,
|
||||
.mx_MLocationBody_map,
|
||||
.mx_MBeaconBody {
|
||||
- border-top-left-radius: 0;
|
||||
+ //border-top-left-radius: 0;
|
||||
}
|
||||
}
|
||||
&.mx_EventTile_lastInSection[data-self="false"] .mx_EventTile_line {
|
||||
@@ -402,7 +404,7 @@ Please see LICENSE files in the repository root for full details.
|
||||
}
|
||||
|
||||
&.mx_EventTile_continuation[data-self="true"] .mx_EventTile_line {
|
||||
- border-top-right-radius: 0;
|
||||
+ //border-top-right-radius: 0;
|
||||
|
||||
.mx_MImageBody .mx_MImageBody_thumbnail_container,
|
||||
.mx_MVideoBody .mx_MVideoBody_container,
|
||||
@@ -410,7 +412,7 @@ Please see LICENSE files in the repository root for full details.
|
||||
.mx_MediaBody,
|
||||
.mx_MLocationBody_map,
|
||||
.mx_MBeaconBody {
|
||||
- border-top-right-radius: 0;
|
||||
+ //border-top-right-radius: 0;
|
||||
}
|
||||
}
|
||||
&.mx_EventTile_lastInSection[data-self="true"] .mx_EventTile_line {
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,25 @@
|
||||
From 5a59cf2ab1fc5483be4ab0a157072d6bec18d052 Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Sun, 13 Oct 2024 13:53:07 +0200
|
||||
Subject: Always show timestamps by default
|
||||
|
||||
---
|
||||
src/settings/Settings.tsx | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx
|
||||
index 3e9fb95799..b76ec5feb2 100644
|
||||
--- a/src/settings/Settings.tsx
|
||||
+++ b/src/settings/Settings.tsx
|
||||
@@ -644,7 +644,7 @@ export const SETTINGS: { [setting: string]: ISetting } = {
|
||||
"alwaysShowTimestamps": {
|
||||
supportedLevels: LEVELS_ACCOUNT_SETTINGS,
|
||||
displayName: _td("settings|always_show_message_timestamps"),
|
||||
- default: false,
|
||||
+ default: true,
|
||||
},
|
||||
"userTimezone": {
|
||||
supportedLevels: LEVELS_DEVICE_ONLY_SETTINGS,
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,25 @@
|
||||
From 2968ddb18dfe25fb1f0aaa08e796a7d0960e4263 Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Thu, 17 Oct 2024 19:40:51 +0200
|
||||
Subject: Enable custom emote rendering by default
|
||||
|
||||
---
|
||||
src/settings/Settings.tsx | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx
|
||||
index b76ec5feb2..51404c88d4 100644
|
||||
--- a/src/settings/Settings.tsx
|
||||
+++ b/src/settings/Settings.tsx
|
||||
@@ -508,7 +508,7 @@ export const SETTINGS: { [setting: string]: ISetting } = {
|
||||
description: _td("labs|render_reaction_images_description"),
|
||||
supportedLevels: LEVELS_DEVICE_ONLY_SETTINGS_WITH_CONFIG_PRIORITISED,
|
||||
supportedLevelsAreOrdered: true,
|
||||
- default: false,
|
||||
+ default: true,
|
||||
},
|
||||
/**
|
||||
* With the transition to Compound we are moving to a base font size
|
||||
--
|
||||
2.47.0
|
||||
|
@ -0,0 +1,25 @@
|
||||
From de706cd1c2fcca44f8c04467f675477045572670 Mon Sep 17 00:00:00 2001
|
||||
From: SpiritCroc <dev@spiritcroc.de>
|
||||
Date: Sun, 27 Oct 2024 19:24:26 +0100
|
||||
Subject: Enable chat previews by default
|
||||
|
||||
---
|
||||
src/stores/room-list/ListLayout.ts | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/stores/room-list/ListLayout.ts b/src/stores/room-list/ListLayout.ts
|
||||
index 275b6d330b..3a188451e7 100644
|
||||
--- a/src/stores/room-list/ListLayout.ts
|
||||
+++ b/src/stores/room-list/ListLayout.ts
|
||||
@@ -18,7 +18,7 @@ interface ISerializedListLayout {
|
||||
|
||||
export class ListLayout {
|
||||
private _n = 0;
|
||||
- private _previews = false;
|
||||
+ private _previews = true;
|
||||
private _collapsed = false;
|
||||
|
||||
public constructor(public readonly tagId: TagID) {
|
||||
--
|
||||
2.47.0
|
||||
|
Reference in New Issue
Block a user