const [encUrlPreview] = useSetting(settingsAtom, 'encUrlPreview');
const showUrlPreview = room.hasEncryptionStateEvent() ? encUrlPreview : urlPreview;
const [showHiddenEvents] = useSetting(settingsAtom, 'showHiddenEvents');
+ const [showDeveloperTools] = useSetting(settingsAtom, 'developerTools');
const ignoredUsersList = useIgnoredUsers();
const ignoredUsersSet = useMemo(() => new Set(ignoredUsersList), [ignoredUsersList]);
)
}
hideReadReceipts={hideActivity}
+ showDeveloperTools={showDeveloperTools}
powerLevelTag={getPowerLevelTag(senderPowerLevel)}
accessibleTagColors={accessibleTagColors}
legacyUsernameColor={legacyUsernameColor || direct}
)
}
hideReadReceipts={hideActivity}
+ showDeveloperTools={showDeveloperTools}
powerLevelTag={getPowerLevelTag(senderPowerLevel)}
accessibleTagColors={accessibleTagColors}
legacyUsernameColor={legacyUsernameColor || direct}
)
}
hideReadReceipts={hideActivity}
+ showDeveloperTools={showDeveloperTools}
powerLevelTag={getPowerLevelTag(senderPowerLevel)}
accessibleTagColors={accessibleTagColors}
legacyUsernameColor={legacyUsernameColor || direct}
messageSpacing={messageSpacing}
canDelete={canRedact || mEvent.getSender() === mx.getUserId()}
hideReadReceipts={hideActivity}
+ showDeveloperTools={showDeveloperTools}
>
<EventContent
messageLayout={messageLayout}
messageSpacing={messageSpacing}
canDelete={canRedact || mEvent.getSender() === mx.getUserId()}
hideReadReceipts={hideActivity}
+ showDeveloperTools={showDeveloperTools}
>
<EventContent
messageLayout={messageLayout}
messageSpacing={messageSpacing}
canDelete={canRedact || mEvent.getSender() === mx.getUserId()}
hideReadReceipts={hideActivity}
+ showDeveloperTools={showDeveloperTools}
>
<EventContent
messageLayout={messageLayout}
messageSpacing={messageSpacing}
canDelete={canRedact || mEvent.getSender() === mx.getUserId()}
hideReadReceipts={hideActivity}
+ showDeveloperTools={showDeveloperTools}
>
<EventContent
messageLayout={messageLayout}
messageSpacing={messageSpacing}
canDelete={canRedact || mEvent.getSender() === mx.getUserId()}
hideReadReceipts={hideActivity}
+ showDeveloperTools={showDeveloperTools}
>
<EventContent
messageLayout={messageLayout}
messageSpacing={messageSpacing}
canDelete={canRedact || mEvent.getSender() === mx.getUserId()}
hideReadReceipts={hideActivity}
+ showDeveloperTools={showDeveloperTools}
>
<EventContent
messageLayout={messageLayout}
reply?: ReactNode;
reactions?: ReactNode;
hideReadReceipts?: boolean;
+ showDeveloperTools?: boolean;
powerLevelTag?: PowerLevelTag;
accessibleTagColors?: Map<string, string>;
legacyUsernameColor?: boolean;
reply,
reactions,
hideReadReceipts,
+ showDeveloperTools,
powerLevelTag,
accessibleTagColors,
legacyUsernameColor,
onClose={closeMenu}
/>
)}
- <MessageSourceCodeItem room={room} mEvent={mEvent} onClose={closeMenu} />
+ {showDeveloperTools && (
+ <MessageSourceCodeItem
+ room={room}
+ mEvent={mEvent}
+ onClose={closeMenu}
+ />
+ )}
<MessageCopyLinkItem room={room} mEvent={mEvent} onClose={closeMenu} />
{canPinEvent && (
<MessagePinItem room={room} mEvent={mEvent} onClose={closeMenu} />
canDelete?: boolean;
messageSpacing: MessageSpacing;
hideReadReceipts?: boolean;
+ showDeveloperTools?: boolean;
};
export const Event = as<'div', EventProps>(
(
canDelete,
messageSpacing,
hideReadReceipts,
+ showDeveloperTools,
children,
...props
},
onClose={closeMenu}
/>
)}
- <MessageSourceCodeItem room={room} mEvent={mEvent} onClose={closeMenu} />
+ {showDeveloperTools && (
+ <MessageSourceCodeItem
+ room={room}
+ mEvent={mEvent}
+ onClose={closeMenu}
+ />
+ )}
<MessageCopyLinkItem room={room} mEvent={mEvent} onClose={closeMenu} />
</Box>
{((!mEvent.isRedacted() && canDelete && !stateEvent) ||