Put message previews for Emoji behind Labs
This commit is contained in:
parent
850c850bde
commit
50b9da7597
3 changed files with 20 additions and 1 deletions
|
@ -158,6 +158,18 @@ export const SETTINGS: {[setting: string]: ISetting} = {
|
|||
supportedLevels: LEVELS_FEATURE,
|
||||
default: false,
|
||||
},
|
||||
"feature_roomlist_preview_reactions_dms": {
|
||||
isFeature: true,
|
||||
displayName: _td("Show message previews for reactions in DMs"),
|
||||
supportedLevels: LEVELS_FEATURE,
|
||||
default: false,
|
||||
},
|
||||
"feature_roomlist_preview_reactions_all": {
|
||||
isFeature: true,
|
||||
displayName: _td("Show message previews for reactions in all rooms"),
|
||||
supportedLevels: LEVELS_FEATURE,
|
||||
default: false,
|
||||
},
|
||||
"advancedRoomListLogging": {
|
||||
// TODO: Remove flag before launch: https://github.com/vector-im/element-web/issues/14231
|
||||
displayName: _td("Enable advanced debugging for the room list"),
|
||||
|
|
|
@ -27,5 +27,5 @@ export interface IPreview {
|
|||
* @param tagId Optional. The tag where the room the event was sent in resides.
|
||||
* @returns The preview.
|
||||
*/
|
||||
getTextFor(event: MatrixEvent, tagId?: TagID): string;
|
||||
getTextFor(event: MatrixEvent, tagId?: TagID): string | null;
|
||||
}
|
||||
|
|
|
@ -19,9 +19,16 @@ import { TagID } from "../models";
|
|||
import { MatrixEvent } from "matrix-js-sdk/src/models/event";
|
||||
import { getSenderName, isSelf, shouldPrefixMessagesIn } from "./utils";
|
||||
import { _t } from "../../../languageHandler";
|
||||
import SettingsStore from "../../../settings/SettingsStore";
|
||||
import DMRoomMap from "../../../utils/DMRoomMap";
|
||||
|
||||
export class ReactionEventPreview implements IPreview {
|
||||
public getTextFor(event: MatrixEvent, tagId?: TagID): string {
|
||||
const showDms = SettingsStore.isFeatureEnabled("feature_roomlist_preview_reactions_dms");
|
||||
const showAll = SettingsStore.isFeatureEnabled("feature_roomlist_preview_reactions_all");
|
||||
|
||||
if (!showAll && (!showDms || DMRoomMap.shared().getUserIdForRoomId(event.getRoomId()))) return null;
|
||||
|
||||
const relation = event.getRelation();
|
||||
if (!relation) return null; // invalid reaction (probably redacted)
|
||||
|
||||
|
|
Loading…
Reference in a new issue