From bfe7683cdb76c2ae0e868b8bc4ad280a4e298786 Mon Sep 17 00:00:00 2001 From: John Preston Date: Mon, 1 Jan 2024 09:23:57 +0400 Subject: [PATCH] Show myself as "My Notes" in Saved Messages sublists. --- .../Resources/icons/dialogs/avatar_hidden.png | Bin 0 -> 919 bytes .../icons/dialogs/avatar_hidden@2x.png | Bin 0 -> 1764 bytes .../icons/dialogs/avatar_hidden@3x.png | Bin 0 -> 2618 bytes .../Resources/icons/dialogs/avatar_notes.png | Bin 0 -> 753 bytes .../icons/dialogs/avatar_notes@2x.png | Bin 0 -> 1315 bytes .../icons/dialogs/avatar_notes@3x.png | Bin 0 -> 1842 bytes .../Resources/icons/hidden_author_userpic.png | Bin 1074 -> 0 bytes .../icons/hidden_author_userpic@2x.png | Bin 2165 -> 0 bytes .../icons/hidden_author_userpic@3x.png | Bin 3431 -> 0 bytes Telegram/Resources/langs/lang.strings | 1 + Telegram/SourceFiles/dialogs/dialogs.style | 3 +- .../SourceFiles/dialogs/ui/dialogs_layout.cpp | 29 ++++++--- .../history/view/history_view_message.cpp | 2 +- Telegram/SourceFiles/ui/empty_userpic.cpp | 59 +++++++++++++++++- Telegram/SourceFiles/ui/empty_userpic.h | 16 +++++ 15 files changed, 99 insertions(+), 11 deletions(-) create mode 100644 Telegram/Resources/icons/dialogs/avatar_hidden.png create mode 100644 Telegram/Resources/icons/dialogs/avatar_hidden@2x.png create mode 100644 Telegram/Resources/icons/dialogs/avatar_hidden@3x.png create mode 100644 Telegram/Resources/icons/dialogs/avatar_notes.png create mode 100644 Telegram/Resources/icons/dialogs/avatar_notes@2x.png create mode 100644 Telegram/Resources/icons/dialogs/avatar_notes@3x.png delete mode 100644 Telegram/Resources/icons/hidden_author_userpic.png delete mode 100644 Telegram/Resources/icons/hidden_author_userpic@2x.png delete mode 100644 Telegram/Resources/icons/hidden_author_userpic@3x.png diff --git a/Telegram/Resources/icons/dialogs/avatar_hidden.png b/Telegram/Resources/icons/dialogs/avatar_hidden.png new file mode 100644 index 0000000000000000000000000000000000000000..e032148c8ad27daa74cf34e8a36426fde980e569 GIT binary patch literal 919 zcmV;I18Dq-P)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91AfN*P1ONa40RR91AOHXW0IY^$^8f$?0ZBwbR7ef&R!vBvQ54M_2r-*L z7&irhZd#bDkfhoxg+$@T1j!_XOiE~zAh@w*vOcTC@;~2y+x- z`Xke9&iH1Yul)X6%&xbP`<;94x$nF0-uGEo_q9YSAQ$mh+-9@6ySw}3CYjt(?^72yng|4oy zVzJoR*qBH#e7;m!F@X;Z-V?IP<2artg&{lgWPlTi4gum};Vc zLmnO;#$bm+Ay)Gn`!G5>y0o+e35&&Yb91w{wsv%Mgc|}v(1h09+#L9mlanfy3U7(T z*tlM=$MH^0O%bVdI=!;8!pi=&k)N$bBoe`PkcL*dP$>MUEEp8bX0xCzE-q5!>FLQ} zFwg|mLBo#F)YQ@6-;c83_u$~*{{H^>_;_Go;AdsQz?%VttFNyQ+oDl06bi+}!~}~} zZCnhAM1t-`N?$_`#lf{oqEe~U(9n>`73*|5Z*OlAfS1KrrJDb}C6~*6K3^u2p&JT^ z!y?i|p`oE+XJ?0mot~cJJl`w-dBQwyY-~_z7z+yvwKQ%7y~IYMWl;x~isr!?upHRv zF?{=2nvjiKetUbHO5iZ*9AOyHh}1<4OiVl;@9gXp60P;&L%+4PMI`q2_6Q*wjk4;f zq1)|72iAs5MNB5s`uaL<4g}ckcB-CCCefpqN~uDkJZPProgu-+#f8mg6Xk!JKxS%w te*VLme_Dty0C$e)e*nJNFI=DkzX6#K%vZ)<1ULWy002ovPDHLkV1j}Br_%rc literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/dialogs/avatar_hidden@2x.png b/Telegram/Resources/icons/dialogs/avatar_hidden@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..ef143054e1659b1b3f36a5573a3eda115f1b8ee3 GIT binary patch literal 1764 zcmV00001b5ch_0Itp) z=>Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91K%fHv1ONa40RR91KmY&$07g+lumAuCPDw;TRA>e5SzAa|OBnW&d9Sck z1aDy$Mrj#d&?BUR_w+#%H3_4a)E+VgA4Ky4BKpvaz9`s(BB&^qrl`?FQff(J8Y)70 z*W(rScsXiyK3uh!*6clN?Y-ANo&$Rx^q+se`EP4x{(olc>FJs-0=fw3BA|=Fe<1=H z85#5Q^NWj%m6eqi78bNgV3wDc&(6-SuC9VGH8rI%$HqxZOZ!2znwlEgl;-AU0`jA- zu8zhW568;NYGY%AH17NN?^my0C9Me#4kiH{9TXHqVvdc@$;qLOYi(`i4Kgq=7#bR) zF`b>AJmxrw(a}-bIB>GEvMenv&z(D0QBk1~aCmrVV`FoirbG9|ix(9d$1$;%7^4`v zckiBt4j5=SKQJ(mAwgeXpD~J|fPertKy*}72Q;+6&(BZPMC}4bMn>3+gguIFU~Fux zT@xA7O-xJ<4i4BRijI1Ccra9m4r#Q6TwGjEoH!w>gAH(Xb!7wCqnbLvmM&$~!NEZa zOc~~X?|`8)&lr41N5`0$m`9HurKF@NtlJoK=^-~aH*5pcBb%F>YinyXKsL^qGiQ)o zKYjWnx-ZoROiWDV<>lGh+RA1$CkXlI@#DvcklL21G;w!#x2UMd$jC@GH=aFvrjiA+ zfIB)mPzB21gS)%CEC#6|BrGgU)B$l9amhly6cwZmz|72yJYrK*Q@?%trbY-gnNm4=C3mG-Vkz0R9X z5~zQ!UAy+jQM+>GirN(st~+19e*OIU^SgKNdU|>W1_t)`_en)kXmJNZLP8=VBVQdg zoY1sT9N6&T{Q2`pKxnuno<4mVMKT)7Rp9?VYI}QoTU%R8OG|$qwW+Boq%Dll0y&P4 zj}M*#N=i!Lr!tHyytN=oYP?&g#h7Z1?d|1n6l@1D z7n_@u$)e%I!omWrkLU2un%IJgiHYs)?O(op!SVR!&70iZT!o(-9|S`H00uCoz#uYb zu^qsy>({Tdj24XHEXR|evJ&XShYwOes6eigF0vw?Q~3aq1d`puhY!_!j`#NV{`m1D zDUPS(p$ici=l0cG9PEOYJ;RB~QuD>|oNztH@M>V`O`TP4TGaX;P zw6s)^f>a0$4YjwofBpKkz=!<&d>Sc*gDZS(ZLL5W-^B@z3P6e+)i5YdcpV&pIH6oo zO^Ti#mgVH+q(BteMHW(3ra0co$q5A`sfMFhR#q-ux+FgT7XsUnFRo~5;9&IZ*|Wdk zGX2MaGd(@6P#>5$B~aT)QH4vEG9e@%FE_Y|OA)97rm?Y+)FGh9$H%cr*y2za3uZC8 zsC*>`g{}0rQ5+gwU0uqw;yYZpaN)NJLmA4j@!2w#t)2C0# zkb}l6<^B8j|LuiNTPB5rY)W41P~IR9XzOH@Vvwqs%*;$a{Qdp?DwP|m>e31xr92$K zp2jUq(}G?r28szqvO`IOoh=5`jq4(yi-0Zyx(FO=1pWau8=^=S7xwS~0000{_T literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/dialogs/avatar_hidden@3x.png b/Telegram/Resources/icons/dialogs/avatar_hidden@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..f6ef6b733b92c3d03febd6e582f0ed83919f97f4 GIT binary patch literal 2618 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/dialogs/avatar_notes@2x.png b/Telegram/Resources/icons/dialogs/avatar_notes@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..98dc7c89cfd385ca6b5f66116761e014afe93e10 GIT binary patch literal 1315 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 diff --git a/Telegram/Resources/langs/lang.strings b/Telegram/Resources/langs/lang.strings index acebc45308..26ef1de599 100644 --- a/Telegram/Resources/langs/lang.strings +++ b/Telegram/Resources/langs/lang.strings @@ -2530,6 +2530,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL "lng_replies_view_original" = "View in chat"; "lng_replies_messages" = "Replies"; "lng_hidden_author_messages" = "Author Hidden"; +"lng_my_notes" = "My Notes"; "lng_replies_discussion_started" = "Discussion started"; "lng_replies_no_comments" = "No comments here yet..."; diff --git a/Telegram/SourceFiles/dialogs/dialogs.style b/Telegram/SourceFiles/dialogs/dialogs.style index 4d379e4fb8..055675b2d4 100644 --- a/Telegram/SourceFiles/dialogs/dialogs.style +++ b/Telegram/SourceFiles/dialogs/dialogs.style @@ -347,7 +347,8 @@ dialogsForumIcon: ThreeStateIcon { dialogsArchiveUserpic: icon {{ "archive_userpic", historyPeerUserpicFg }}; dialogsRepliesUserpic: icon {{ "replies_userpic", historyPeerUserpicFg }}; dialogsInaccessibleUserpic: icon {{ "dialogs/inaccessible_userpic", historyPeerUserpicFg }}; -dialogsHiddenAuthorUserpic: icon {{ "hidden_author_userpic", historyPeerUserpicFg }}; +dialogsHiddenAuthorUserpic: icon {{ "dialogs/avatar_hidden", premiumButtonFg }}; +dialogsMyNotesUserpic: icon {{ "dialogs/avatar_notes", historyPeerUserpicFg }}; dialogsSendStateSkip: 20px; dialogsSendingIcon: ThreeStateIcon { diff --git a/Telegram/SourceFiles/dialogs/ui/dialogs_layout.cpp b/Telegram/SourceFiles/dialogs/ui/dialogs_layout.cpp index e464773385..91362c73ea 100644 --- a/Telegram/SourceFiles/dialogs/ui/dialogs_layout.cpp +++ b/Telegram/SourceFiles/dialogs/ui/dialogs_layout.cpp @@ -266,11 +266,12 @@ void PaintFolderEntryText( } enum class Flag { - SavedMessages = 0x08, - RepliesMessages = 0x10, - AllowUserOnline = 0x20, - TopicJumpRipple = 0x40, - HiddenAuthor = 0x80, + SavedMessages = 0x008, + RepliesMessages = 0x010, + AllowUserOnline = 0x020, + TopicJumpRipple = 0x040, + HiddenAuthor = 0x080, + MyNotes = 0x100, }; inline constexpr bool is_flag_type(Flag) { return true; } @@ -336,6 +337,13 @@ void PaintRow( context.st->padding.top(), context.width, context.st->photoSize); + } else if (flags & Flag::MyNotes) { + EmptyUserpic::PaintMyNotes( + p, + context.st->padding.left(), + context.st->padding.top(), + context.width, + context.st->photoSize); } else if (!from && hiddenSenderInfo) { hiddenSenderInfo->emptyUserpic.paintCircle( p, @@ -619,11 +627,14 @@ void PaintRow( if (flags & (Flag::SavedMessages | Flag::RepliesMessages - | Flag::HiddenAuthor)) { + | Flag::HiddenAuthor + | Flag::MyNotes)) { auto text = (flags & Flag::SavedMessages) ? tr::lng_saved_messages(tr::now) : (flags & Flag::RepliesMessages) ? tr::lng_replies_messages(tr::now) + : (flags & Flag::MyNotes) + ? tr::lng_my_notes(tr::now) : tr::lng_hidden_author_messages(tr::now); const auto textWidth = st::semiboldFont->width(text); if (textWidth > rectForName.width()) { @@ -792,7 +803,11 @@ void RowPainter::Paint( : nullptr; const auto allowUserOnline = true;// !context.narrow || badgesState.empty(); const auto flags = (allowUserOnline ? Flag::AllowUserOnline : Flag(0)) - | ((peer && peer->isSelf()) ? Flag::SavedMessages : Flag(0)) + | ((sublist && from->isSelf()) + ? Flag::MyNotes + : (peer && peer->isSelf()) + ? Flag::SavedMessages + : Flag(0)) | ((from && from->isRepliesChat()) ? Flag::RepliesMessages : Flag(0)) diff --git a/Telegram/SourceFiles/history/view/history_view_message.cpp b/Telegram/SourceFiles/history/view/history_view_message.cpp index 36bcb31d6d..46f6e22b01 100644 --- a/Telegram/SourceFiles/history/view/history_view_message.cpp +++ b/Telegram/SourceFiles/history/view/history_view_message.cpp @@ -1997,7 +1997,7 @@ bool Message::hasFromPhoto() const { } else if (const auto forwarded = item->Get()) { const auto peer = item->history()->peer; if (peer->isSelf() || peer->isRepliesChat()) { - return true; + return !hasOutLayout(); } } return !item->out() && !item->history()->peer->isUser(); diff --git a/Telegram/SourceFiles/ui/empty_userpic.cpp b/Telegram/SourceFiles/ui/empty_userpic.cpp index 2e3d9cbf08..d2b11df2cf 100644 --- a/Telegram/SourceFiles/ui/empty_userpic.cpp +++ b/Telegram/SourceFiles/ui/empty_userpic.cpp @@ -167,6 +167,22 @@ void PaintHiddenAuthorInner( fg); } +void PaintMyNotesInner( + QPainter &p, + int x, + int y, + int size, + const style::color &fg) { + PaintIconInner( + p, + x, + y, + size, + st::defaultDialogRow.photoSize, + st::dialogsMyNotesUserpic, + fg); +} + void PaintExternalMessagesInner( QPainter &p, int x, @@ -421,8 +437,8 @@ void EmptyUserpic::PaintHiddenAuthor( int size) { auto bg = QLinearGradient(x, y, x, y + size); bg.setStops({ - { 0., st::historyPeerSavedMessagesBg->c }, - { 1., st::historyPeerSavedMessagesBg2->c } + { 0., st::premiumButtonBg2->c }, + { 1., st::premiumButtonBg3->c }, }); const auto &fg = st::historyPeerUserpicFg; PaintHiddenAuthor(p, x, y, outerWidth, size, QBrush(bg), fg); @@ -452,6 +468,45 @@ QImage EmptyUserpic::GenerateHiddenAuthor(int size) { }); } +void EmptyUserpic::PaintMyNotes( + QPainter &p, + int x, + int y, + int outerWidth, + int size) { + auto bg = QLinearGradient(x, y, x, y + size); + bg.setStops({ + { 0., st::historyPeerSavedMessagesBg->c }, + { 1., st::historyPeerSavedMessagesBg2->c } + }); + const auto &fg = st::historyPeerUserpicFg; + PaintMyNotes(p, x, y, outerWidth, size, QBrush(bg), fg); +} + +void EmptyUserpic::PaintMyNotes( + QPainter &p, + int x, + int y, + int outerWidth, + int size, + QBrush bg, + const style::color &fg) { + x = style::RightToLeft() ? (outerWidth - x - size) : x; + + PainterHighQualityEnabler hq(p); + p.setBrush(bg); + p.setPen(Qt::NoPen); + p.drawEllipse(x, y, size, size); + + PaintMyNotesInner(p, x, y, size, fg); +} + +QImage EmptyUserpic::GenerateMyNotes(int size) { + return Generate(size, [&](QPainter &p) { + PaintMyNotes(p, 0, 0, size, size); + }); +} + std::pair EmptyUserpic::uniqueKey() const { const auto first = (uint64(0xFFFFFFFFU) << 32) | anim::getPremultiplied(_colors.color1->c); diff --git a/Telegram/SourceFiles/ui/empty_userpic.h b/Telegram/SourceFiles/ui/empty_userpic.h index 5fc5598186..7d293db54a 100644 --- a/Telegram/SourceFiles/ui/empty_userpic.h +++ b/Telegram/SourceFiles/ui/empty_userpic.h @@ -97,6 +97,22 @@ public: const style::color &fg); [[nodiscard]] static QImage GenerateHiddenAuthor(int size); + static void PaintMyNotes( + QPainter &p, + int x, + int y, + int outerWidth, + int size); + static void PaintMyNotes( + QPainter &p, + int x, + int y, + int outerWidth, + int size, + QBrush bg, + const style::color &fg); + [[nodiscard]] static QImage GenerateMyNotes(int size); + ~EmptyUserpic(); private: