From c923f0264d156df74b4e02bbb97ec7327e401d99 Mon Sep 17 00:00:00 2001 From: zubiden <19638254+zubiden@users.noreply.github.com> Date: Sat, 1 Mar 2025 17:59:32 +0100 Subject: [PATCH] Print: Hide protected content (#5670) --- src/components/middle/MessageList.tsx | 5 +++++ src/components/middle/message/Message.tsx | 1 + src/styles/print.scss | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/src/components/middle/MessageList.tsx b/src/components/middle/MessageList.tsx index 7c756629d..6ac482adf 100644 --- a/src/components/middle/MessageList.tsx +++ b/src/components/middle/MessageList.tsx @@ -38,6 +38,7 @@ import { selectCurrentMessageIds, selectFirstUnreadId, selectFocusedMessageId, + selectIsChatProtected, selectIsChatWithSelf, selectIsCurrentUserPremium, selectIsInSelectMode, @@ -124,6 +125,7 @@ type StateProps = { currentUserId: string; areAdsEnabled?: boolean; channelJoinInfo?: ApiChatFullInfo['joinInfo']; + isChatProtected?: boolean; }; const MESSAGE_REACTIONS_POLLING_INTERVAL = 20 * 1000; @@ -178,6 +180,7 @@ const MessageList: FC = ({ isContactRequirePremium, areAdsEnabled, channelJoinInfo, + isChatProtected, onIntersectPinnedMessage, onScrollDownToggle, onNotchToggle, @@ -653,6 +656,7 @@ const MessageList: FC = ({ isScrolled && 'scrolled', !isReady && 'is-animating', hasOpenChatButton && 'saved-dialog', + isChatProtected && 'hide-on-print', ); const hasMessages = (messageIds && messageGroups) || lastMessage; @@ -795,6 +799,7 @@ export default memo(withGlobal( isForum: chat.isForum, isEmptyThread, currentUserId, + isChatProtected: selectIsChatProtected(global, chatId), ...(withLastMessageWhenPreloading && { lastMessage }), }; }, diff --git a/src/components/middle/message/Message.tsx b/src/components/middle/message/Message.tsx index 09b56450d..a10272231 100644 --- a/src/components/middle/message/Message.tsx +++ b/src/components/middle/message/Message.tsx @@ -683,6 +683,7 @@ const Message: FC = ({ const containerClassName = buildClassName( 'Message message-list-item', isFirstInGroup && 'first-in-group', + isProtected && 'hide-on-print', isProtected && !hasTextContent ? 'is-protected' : 'allow-selection', isLastInGroup && 'last-in-group', isFirstInDocumentGroup && 'first-in-document-group', diff --git a/src/styles/print.scss b/src/styles/print.scss index 014488a7e..966edf40d 100644 --- a/src/styles/print.scss +++ b/src/styles/print.scss @@ -55,4 +55,8 @@ background: var(--color-background-own) !important; color: var(--color-text) !important; } + + .hide-on-print { + visibility: hidden !important; + } }