diff --git a/ts/components/conversation/SessionConversation.tsx b/ts/components/conversation/SessionConversation.tsx
index 5063e703f..e0623aba2 100644
--- a/ts/components/conversation/SessionConversation.tsx
+++ b/ts/components/conversation/SessionConversation.tsx
@@ -68,7 +68,7 @@ import {
useSelectedIsPublic,
useSelectedWeAreAdmin,
} from '../../state/selectors/selectedConversation';
-import { useAreLegacyGroupsDeprecatedYet } from '../../state/selectors/releasedFeatures';
+import { useSelectedDisableLegacyGroupDeprecatedActions } from '../../hooks/useRefreshReleasedFeaturesTimestamp';
const DEFAULT_JPEG_QUALITY = 0.85;
@@ -670,7 +670,7 @@ function OutdatedLegacyGroupBanner() {
const selectedConversationKey = useSelectedConversationKey();
const isPrivate = useSelectedIsPrivate();
const isPublic = useSelectedIsPublic();
- const deprecatedLegacyGroups = useAreLegacyGroupsDeprecatedYet();
+ const deprecatedLegacyGroups = useSelectedDisableLegacyGroupDeprecatedActions();
const isLegacyGroup =
!isPrivate && !isPublic && selectedConversationKey && selectedConversationKey.startsWith('05');
diff --git a/ts/components/conversation/message/message-content/MessageContextMenu.tsx b/ts/components/conversation/message/message-content/MessageContextMenu.tsx
index accc229a6..343c757f4 100644
--- a/ts/components/conversation/message/message-content/MessageContextMenu.tsx
+++ b/ts/components/conversation/message/message-content/MessageContextMenu.tsx
@@ -54,6 +54,7 @@ import { WithMessageId } from '../../../../session/types/with';
import { DeleteItem } from '../../../menu/items/DeleteMessage/DeleteMessageMenuItem';
import { RetryItem } from '../../../menu/items/RetrySend/RetrySendMenuItem';
import { showCopyAccountIdAction } from '../../../menu/items/CopyAccountId/guard';
+import { useSelectedDisableLegacyGroupDeprecatedActions } from '../../../../hooks/useRefreshReleasedFeaturesTimestamp';
export type MessageContextMenuSelectorProps = Pick<
MessageRenderingProps,
@@ -165,6 +166,7 @@ export const MessageContextMenu = (props: Props) => {
const { messageId, contextMenuId, enableReactions } = props;
const dispatch = useDispatch();
const { hideAll } = useContextMenu();
+ const legacyGroupIsDeprecated = useSelectedDisableLegacyGroupDeprecatedActions();
const isSelectedBlocked = useSelectedIsBlocked();
const convoId = useSelectedConversationKey();
@@ -316,7 +318,7 @@ export const MessageContextMenu = (props: Props) => {
return (
- {enableReactions && showEmojiPanel && (
+ {enableReactions && !legacyGroupIsDeprecated && showEmojiPanel && (
{
onVisibilityChange={onVisibilityChange}
animation={getMenuAnimation()}
>
- {enableReactions && (
+ {enableReactions && !legacyGroupIsDeprecated && (
// eslint-disable-next-line @typescript-eslint/no-misused-promises
{
{window.i18n('save')}
) : null}
{window.i18n('copy')}
- {(isSent || !isOutgoing) && (
+ {(isSent || !isOutgoing) && !legacyGroupIsDeprecated && (
{window.i18n('reply')}
)}
{
{sender && showCopyAccountIdAction({ isPrivate: true, pubkey: sender }) ? (
) : null}
-
- {isDeletable ? (
+ {!legacyGroupIsDeprecated && }
+ {isDeletable && !legacyGroupIsDeprecated ? (
) : null}
-
-
+ {!legacyGroupIsDeprecated && }
+ {!legacyGroupIsDeprecated && }
diff --git a/ts/components/conversation/message/message-item/GenericReadableMessage.tsx b/ts/components/conversation/message/message-item/GenericReadableMessage.tsx
index f53ea150d..c9930d13d 100644
--- a/ts/components/conversation/message/message-item/GenericReadableMessage.tsx
+++ b/ts/components/conversation/message/message-item/GenericReadableMessage.tsx
@@ -13,7 +13,6 @@ import { getGenericReadableMessageSelectorProps } from '../../../../state/select
import { MessageContentWithStatuses } from '../message-content/MessageContentWithStatus';
import { StyledMessageReactionsContainer } from '../message-content/MessageReactions';
import { useIsMessageSelectionMode } from '../../../../state/selectors/selectedConversation';
-import { useSelectedDisableLegacyGroupDeprecatedActions } from '../../../../hooks/useRefreshReleasedFeaturesTimestamp';
export type GenericReadableMessageSelectorProps = Pick<
MessageRenderingProps,
@@ -66,7 +65,6 @@ export const GenericReadableMessage = (props: Props) => {
const { ctxMenuID, messageId } = props;
const [enableReactions, setEnableReactions] = useState(true);
- const legacyGroupIsDeprecated = useSelectedDisableLegacyGroupDeprecatedActions();
const msgProps = useSelector((state: StateType) =>
getGenericReadableMessageSelectorProps(state, props.messageId)
@@ -85,9 +83,6 @@ export const GenericReadableMessage = (props: Props) => {
const handleContextMenu = useCallback(
(e: MouseEvent) => {
- if (legacyGroupIsDeprecated) {
- return;
- }
// this is quite dirty but considering that we want the context menu of the message to show on click on the attachment
// and the context menu save attachment item to save the right attachment I did not find a better way for now.
@@ -100,7 +95,6 @@ export const GenericReadableMessage = (props: Props) => {
isString(attachmentIndexStr) && !isNil(toNumber(attachmentIndexStr))
? toNumber(attachmentIndexStr)
: 0;
-
if (enableContextMenu) {
contextMenu.hideAll();
contextMenu.show({
@@ -113,7 +107,7 @@ export const GenericReadableMessage = (props: Props) => {
}
setIsRightClicked(enableContextMenu);
},
- [ctxMenuID, multiSelectMode, msgProps?.isKickedFromGroup, legacyGroupIsDeprecated]
+ [ctxMenuID, multiSelectMode, msgProps?.isKickedFromGroup]
);
useEffect(() => {
diff --git a/ts/components/conversation/message/message-item/Message.tsx b/ts/components/conversation/message/message-item/Message.tsx
index 40d5709a2..2c6016f9e 100644
--- a/ts/components/conversation/message/message-item/Message.tsx
+++ b/ts/components/conversation/message/message-item/Message.tsx
@@ -10,6 +10,7 @@ type Props = {
};
export const Message = (props: Props) => {
+ // FIXME this should probably just be something static per message.
const ctxMenuID = `ctx-menu-message-${uuidv4()}`;
return ;
diff --git a/ts/components/conversation/message/reactions/Reaction.tsx b/ts/components/conversation/message/reactions/Reaction.tsx
index d1c266e7d..b4e1eee72 100644
--- a/ts/components/conversation/message/reactions/Reaction.tsx
+++ b/ts/components/conversation/message/reactions/Reaction.tsx
@@ -81,7 +81,6 @@ export const Reaction = (props: ReactionProps) => {
const rightOverlayMode = useRightOverlayMode();
const areDeprecatedLegacyGroupDisabled = useSelectedDisableLegacyGroupDeprecatedActions();
- const legacyGroupDeprecated = useSelectedDisableLegacyGroupDeprecatedActions();
const isMessageSelection = useIsMessageSelectionMode();
const reactionsMap = (reactions && Object.fromEntries(reactions)) || {};
const senders = reactionsMap[emoji]?.senders || [];
@@ -110,7 +109,7 @@ export const Reaction = (props: ReactionProps) => {
const handleReactionClick = () => {
if (!isMessageSelection) {
// Note: disable emoji clicks if the legacy group is deprecated (group is readonly)
- if (onClick && !legacyGroupDeprecated) {
+ if (onClick && !areDeprecatedLegacyGroupDisabled) {
onClick(emoji);
}
}
diff --git a/ts/components/conversation/right-panel/overlay/message-info/OverlayMessageInfo.tsx b/ts/components/conversation/right-panel/overlay/message-info/OverlayMessageInfo.tsx
index 4d90cf20f..358973999 100644
--- a/ts/components/conversation/right-panel/overlay/message-info/OverlayMessageInfo.tsx
+++ b/ts/components/conversation/right-panel/overlay/message-info/OverlayMessageInfo.tsx
@@ -52,6 +52,7 @@ import { AttachmentInfo, MessageInfo } from './components';
import { AttachmentCarousel } from './components/AttachmentCarousel';
import { ToastUtils } from '../../../../../session/utils';
import { showCopyAccountIdAction } from '../../../../menu/items/CopyAccountId/guard';
+import { useSelectedDisableLegacyGroupDeprecatedActions } from '../../../../../hooks/useRefreshReleasedFeaturesTimestamp';
// NOTE we override the default max-widths when in the detail isDetailView
const StyledMessageBody = styled.div`
@@ -196,6 +197,9 @@ type WithMessageIdOpt = { messageId: string };
*/
function CopyMessageBodyButton({ messageId }: WithMessageIdOpt) {
const messageBody = useMessageBody(messageId);
+ if (!messageBody) {
+ return null;
+ }
return (
{
const timestamp = useMessageTimestamp(messageId);
const serverTimestamp = useMessageServerTimestamp(messageId);
const sender = useMessageSender(messageId);
+ const legacyGroupIsDeprecated = useSelectedDisableLegacyGroupDeprecatedActions();
// we close the right panel when switching conversation so the convoId of that message is always the selectedConversationKey
// is always the currently selected conversation
@@ -363,9 +368,9 @@ export const OverlayMessageInfo = () => {
{/* CopyMessageBodyButton is always shown so the PanelButtonGroup always has at least one item */}
-
+ {!legacyGroupIsDeprecated && }
- {hasErrors && direction === 'outgoing' && (
+ {hasErrors && !legacyGroupIsDeprecated && direction === 'outgoing' && (
{
}}
/>
)}
- {isDeletable && (
+ {isDeletable && !legacyGroupIsDeprecated && (