From de732ba692cfae372bfe14509c41168feff06699 Mon Sep 17 00:00:00 2001 From: John Preston Date: Tue, 14 Jan 2025 20:41:04 +0400 Subject: [PATCH] Update icons for collectible wearing. --- Telegram/Resources/icons/menu/nft_takeoff.png | Bin 0 -> 730 bytes .../Resources/icons/menu/nft_takeoff@2x.png | Bin 0 -> 1439 bytes .../Resources/icons/menu/nft_takeoff@3x.png | Bin 0 -> 2025 bytes Telegram/Resources/icons/menu/nft_wear.png | Bin 0 -> 716 bytes Telegram/Resources/icons/menu/nft_wear@2x.png | Bin 0 -> 1482 bytes Telegram/Resources/icons/menu/nft_wear@3x.png | Bin 0 -> 2176 bytes Telegram/Resources/langs/lang.strings | 1 + .../SourceFiles/boxes/gift_premium_box.cpp | 21 ++++++--- Telegram/SourceFiles/boxes/star_gift_box.cpp | 43 ++++++++++++++++-- .../boosts/giveaway/giveaway.style | 2 + .../settings/settings_credits_graphics.cpp | 6 ++- .../settings/settings_credits_graphics.h | 2 + Telegram/SourceFiles/ui/effects/credits.style | 3 +- Telegram/SourceFiles/ui/menu_icons.style | 2 + 14 files changed, 65 insertions(+), 15 deletions(-) create mode 100644 Telegram/Resources/icons/menu/nft_takeoff.png create mode 100644 Telegram/Resources/icons/menu/nft_takeoff@2x.png create mode 100644 Telegram/Resources/icons/menu/nft_takeoff@3x.png create mode 100644 Telegram/Resources/icons/menu/nft_wear.png create mode 100644 Telegram/Resources/icons/menu/nft_wear@2x.png create mode 100644 Telegram/Resources/icons/menu/nft_wear@3x.png diff --git a/Telegram/Resources/icons/menu/nft_takeoff.png b/Telegram/Resources/icons/menu/nft_takeoff.png new file mode 100644 index 0000000000000000000000000000000000000000..464d149bdca3a75688cd107c1cfa4db6a3b39b1e GIT binary patch literal 730 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDq2jfyu?w#WBP} z@NCHG)h`1@zS+2RzAikMn$!{0r4*F*s)W6b&F$2LnKLwIPTcRv>8z$UX~s*L{|zN+ zZgQ1R)GF`&-uU#*=D$4Wo|Iir*dBL(`?Y)3Z_hsdyL?fA#vDKO^kSun9y(&hZ5DG9 zZoVyB7|_vq^zq00;*Ez|OBZn$14j-|evR_FEsj z?I)jq7EIWYwe?nxS@hbl_wU~`H9ly&l3~Kv&V0Q5bIjD|&!5Mwch9;Mlkoj#&C?>u zi_&bI?S~V0-~INxmLdP&=1D$k_wU`CH*emSC|#df+|N#*=I%TH_~V@5$~_MYBsyJG zgg6x#gr0A`{kKkks@Kz^O0(HVFD_^;u!zwRInc4^Vn&FLSn@`Rg9?}5mYq&9($H|2 zb3Jrv(88bg;*$Nxt>*GE?$W<9!*4lTGb1a5+RO%qAFUk{Z_BLbpJ!)kJejg6L`za{ z^UavGVF!hH*ot??EWiA4fx@~Ft*cpE7q~CJ=(gB#PD%U@-j)aXX0u>Q@6i< zXUrta1&2+${?ck&wKwic+NFKDkK&KY|INK&&-91YKirXXPE@cvC|!BF`njxg HN@xNAO7uY( literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/nft_takeoff@2x.png b/Telegram/Resources/icons/menu/nft_takeoff@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..6603a81947ec0cacec82ee5e534ef55c1eb89897 GIT binary patch literal 1439 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/nft_wear@3x.png b/Telegram/Resources/icons/menu/nft_wear@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..35545df8963d06c52556a10d577c8e1b6ec453c7 GIT binary patch literal 2176 zcmV-`2!Hp9P)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS?>PbXFRA>e5nn#EfT@c4z*MxBu zv!a+UMob6sV9pAnux3T{pkhD}!GnT`f(Zi{5CbTR83QVaiU%`hQOr39%vrzR_tm#$ z+1=CAJ<~I=FdoM0s(Sybdi`F#devK?K;~a&1~M~{nSsmK=$w7KYsl9apT7A+qcj18#Zj1Iv-Mkykf-)4Pe%+ zS=Pqv*|Sx&Y}qm^$_MnBGiSv6moHxyELhNb%+`AK>Xk@OojPSj5z>E|j1ad{rAmT! z>C&ZNzkXR{GCoYC-2-vYWGa z@80g+ySw>t4jeepwQE;Tk%L*hc<})P26XGzjZ*W=moK+&-P*Ki6T_J-hi1@6)(Lf; zd$ONCecG{O$G9kk3Ke1^+{1ot=>({SE$`o3WrT6UF6AJ-A746!!%Z{=%;G%{(j9QUJ zz*Q@XLmxhTSU}mhZq+SYwutoGw{MO*P?YP{t4A3nI-b>_<|I~WojP^gCV&N85HROf z(2RnsZYdn^%7d&b+N4@XK?Gmt@B8=fjyh0AaYNCizi{C~VcOqCix$Zv0dSYGBB6mL zFrn3)s^Joj$)mceQa=L2GF$u(88XDGlHBxdkRGf^=+dQ2Ybi)hch3uIB>E>$o`?xD zgjQGTN+BY7ye=I( zZQ3-qf^eo!pRQ_S$BuQYaSE#fE0#B(laoUpo-}C^E~yAt-DCYY+qP}f!9K+B;lnKo zD^NE*i=;w@3RY@qE-YWaeih`aSFh^Q6&=bQ>wPQ-aMEH1qDz%3r3XWL4Q+_E=lIcrj86;-g28 zs=Wsf9-v0z)*Tq|qNOcIb`eDhyXeZ5D++u0@?|)fvxoJXHEXI?t!h0?oUT%(iW*zG zbg2N9D_8E?wQI^}VeoqOap1s#LG0Oj667OCjwk{dRjLhe=FOX@d~SL{kb~+xeE3kH z?SYF8_c}q1(=$lrj&0OD5hz5PHf^fT>FS`EQf4&7_U+pxFjARyx@F6jA3uK7=@eq- z%$dQhqU;#X7P7g7w!()GA4G>e92_~2=G3WE)jXTtj_KXIH#gCIqYhXSnemHwpTN5#bg5{^0 zK70181a{}no#3{-t9#G!+%<&Xpg{w7#qBvHd1kR<#q{*I2{|ruh`jV>GH`PDF}L0IwUPF z%jA#XfZ_HSFDmR>5AKSOCLOC#Q2`Zhk1>F?-lKSq=#q)?R7;O&;%(LGd48kp_cwVN3vk-4<ilvz0Lb_!xh1vPcontent = EmojiStatusIdValue( peer ) | rpl::map([=](EmojiStatusId emojiStatusId) { + if (!peer->session().premium()) { + return Badge::Content(); + } return Badge::Content{ .badge = BadgeType::Premium, .emojiStatusId = emojiStatusId, @@ -232,7 +235,9 @@ constexpr auto kRarityTooltipDuration = 3 * crl::time(1000); [=] { return show->paused(ChatHelpers::PauseReason::Layer); }); state->content.value( ) | rpl::start_with_next([=](const Badge::Content &content) { - pushStatusId(badge->widget(), content.emojiStatusId); + if (const auto widget = badge->widget()) { + pushStatusId(widget, content.emojiStatusId); + } }, raw->lifetime()); rpl::combine( @@ -248,12 +253,14 @@ constexpr auto kRarityTooltipDuration = 3 * crl::time(1000); label->moveToLeft(position.x(), position.y(), width); const auto top = (raw->height() - userpic->height()) / 2; userpic->moveToLeft(0, top, width); - badge->widget()->moveToLeft( - position.x() + label->width() + st::normalFont->spacew, - (position.y() - + table->st().defaultValue.style.font->ascent - - table->st().smallButton.style.font->ascent), - width); + if (badgeWidget) { + badgeWidget->moveToLeft( + position.x() + label->width() + st::normalFont->spacew, + (position.y() + + table->st().defaultValue.style.font->ascent + - table->st().smallButton.style.font->ascent), + width); + } }, label->lifetime()); userpic->setAttribute(Qt::WA_TransparentForMouseEvents); diff --git a/Telegram/SourceFiles/boxes/star_gift_box.cpp b/Telegram/SourceFiles/boxes/star_gift_box.cpp index e5dbcf99d..0ebdd126b 100644 --- a/Telegram/SourceFiles/boxes/star_gift_box.cpp +++ b/Telegram/SourceFiles/boxes/star_gift_box.cpp @@ -30,6 +30,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "data/data_document_media.h" #include "data/data_emoji_statuses.h" #include "data/data_file_origin.h" +#include "data/data_peer_values.h" #include "data/data_session.h" #include "data/data_user.h" #include "data/stickers/data_custom_emoji.h" @@ -2362,20 +2363,52 @@ void ShowUniqueGiftWearBox( // &st::menuIconUniqueProfile); infoRow( tr::lng_gift_wear_proof_title(), - tr::lng_gift_wear_proof_about(), // todo collectibles - st.proofIcon ? st.proofIcon : &st::menuIconTradable); + tr::lng_gift_wear_proof_about(), + st.proofIcon ? st.proofIcon : &st::menuIconFactcheck); - const auto button = box->addButton(tr::lng_gift_wear_start(), [=] { - const auto session = &show->session(); + const auto session = &show->session(); + const auto button = box->addButton(rpl::single(QString()), [=] { if (session->premium()) { box->closeBox(); session->data().emojiStatuses().set( session->user(), session->data().emojiStatuses().fromUniqueGift(gift)); } else { - ShowPremiumPreviewBox(show, PremiumFeature::EmojiStatus); + const auto link = Ui::Text::Bold( + tr::lng_send_as_premium_required_link(tr::now)); + Settings::ShowPremiumPromoToast( + show, + tr::lng_gift_wear_subscribe( + tr::now, + lt_link, + Ui::Text::Link(link), + Ui::Text::WithEntities), + u"wear_collectibles"_q); } }); + const auto lock = Ui::Text::SingleCustomEmoji( + session->data().customEmojiManager().registerInternalEmoji( + st::historySendDisabledIcon, + st::giftBoxLockMargins, + true)); + auto label = rpl::combine( + tr::lng_gift_wear_start(), + Data::AmPremiumValue(&show->session()) + ) | rpl::map([=](const QString &text, bool premium) { + auto result = TextWithEntities(); + if (!premium) { + result.append(lock); + } + result.append(text); + return result; + }); + SetButtonMarkedLabel( + button, + std::move(label), + session, + st::creditsBoxButtonLabel, + &st::giftBox.button.textFg); + rpl::combine( box->widthValue(), button->widthValue() diff --git a/Telegram/SourceFiles/info/channel_statistics/boosts/giveaway/giveaway.style b/Telegram/SourceFiles/info/channel_statistics/boosts/giveaway/giveaway.style index fccb91fcd..3bf228c9b 100644 --- a/Telegram/SourceFiles/info/channel_statistics/boosts/giveaway/giveaway.style +++ b/Telegram/SourceFiles/info/channel_statistics/boosts/giveaway/giveaway.style @@ -219,6 +219,8 @@ darkGiftCodeBox: Box(giveawayGiftCodeBox) { darkGiftLink: icon {{ "menu/copy", groupCallMembersFg }}; darkGiftShare: icon {{ "menu/share", groupCallMembersFg }}; darkGiftTransfer: icon {{ "chat/input_replace", groupCallMembersFg }}; +darkGiftNftWear: icon {{ "menu/nft_wear", groupCallMembersFg }}; +darkGiftNftTakeOff: icon {{ "menu/nft_takeoff", groupCallMembersFg }}; darkGiftPalette: TextPalette(defaultTextPalette) { linkFg: mediaviewTextLinkFg; monoFg: groupCallMembersFg; diff --git a/Telegram/SourceFiles/settings/settings_credits_graphics.cpp b/Telegram/SourceFiles/settings/settings_credits_graphics.cpp index 077c493fe..8a3f793ca 100644 --- a/Telegram/SourceFiles/settings/settings_credits_graphics.cpp +++ b/Telegram/SourceFiles/settings/settings_credits_graphics.cpp @@ -871,13 +871,13 @@ void FillUniqueGiftMenu( if (now && unique->slug == now->slug) { menu->addAction(tr::lng_gift_transfer_take_off(tr::now), [=] { show->session().data().emojiStatuses().set(peer, {}); - }, st.transfer ? st.transfer : &st::menuIconReplace); + }, st.takeoff ? st.takeoff : &st::menuIconNftTakeOff); } else { menu->addAction(tr::lng_gift_transfer_wear(tr::now), [=] { ShowUniqueGiftWearBox(show, *unique, st.giftWearBox ? *st.giftWearBox : GiftWearBoxStyleOverride()); - }, st.transfer ? st.transfer : &st::menuIconReplace); + }, st.wear ? st.wear : &st::menuIconNftWear); } } } @@ -904,6 +904,8 @@ CreditsEntryBoxStyleOverrides DarkCreditsEntryBoxStyle() { .link = &st::darkGiftLink, .share = &st::darkGiftShare, .transfer = &st::darkGiftTransfer, + .wear = &st::darkGiftNftWear, + .takeoff = &st::darkGiftNftTakeOff, .shareBox = std::make_shared( DarkShareBoxStyle()), .giftWearBox = std::make_shared( diff --git a/Telegram/SourceFiles/settings/settings_credits_graphics.h b/Telegram/SourceFiles/settings/settings_credits_graphics.h index a392f70dd..97eeaf13b 100644 --- a/Telegram/SourceFiles/settings/settings_credits_graphics.h +++ b/Telegram/SourceFiles/settings/settings_credits_graphics.h @@ -110,6 +110,8 @@ struct CreditsEntryBoxStyleOverrides { const style::icon *link = nullptr; const style::icon *share = nullptr; const style::icon *transfer = nullptr; + const style::icon *wear = nullptr; + const style::icon *takeoff = nullptr; std::shared_ptr shareBox; std::shared_ptr giftWearBox; }; diff --git a/Telegram/SourceFiles/ui/effects/credits.style b/Telegram/SourceFiles/ui/effects/credits.style index 5689aac2f..a95eb292a 100644 --- a/Telegram/SourceFiles/ui/effects/credits.style +++ b/Telegram/SourceFiles/ui/effects/credits.style @@ -164,6 +164,7 @@ giftListAbout: FlatLabel(defaultFlatLabel) { giftListAboutMargin: margins(12px, 24px, 12px, 24px); giftBoxEmojiToggleTop: 7px; giftBoxLimitTop: 28px; +giftBoxLockMargins: margins(-2px, 1px, 0px, 0px); creditsHistoryEntriesList: PeerList(defaultPeerList) { padding: margins( @@ -227,7 +228,7 @@ darkUpgradeGiftBox: Box(upgradeGiftBox) { titleAdditionalFg: groupCallMemberNotJoinedStatus; } darkUpgradeGiftRadiant: icon{{ "menu/unique", groupCallMembersFg }}; -darkUpgradeGiftProof: icon{{ "menu/tradable", groupCallMembersFg }}; +darkUpgradeGiftProof: icon{{ "menu/factcheck", groupCallMembersFg }}; darkUpgradeGiftInfoTitle: FlatLabel(defaultFlatLabel) { textFg: groupCallMembersFg; } diff --git a/Telegram/SourceFiles/ui/menu_icons.style b/Telegram/SourceFiles/ui/menu_icons.style index f1d3c6442..90d595f16 100644 --- a/Telegram/SourceFiles/ui/menu_icons.style +++ b/Telegram/SourceFiles/ui/menu_icons.style @@ -173,6 +173,8 @@ menuIconTransparent: icon {{ "menu/affiliate_transparent", menuIconColor }}; menuIconLike: icon {{ "menu/affiliate_simple", menuIconColor }}; menuIconTradable: icon {{ "menu/tradable", menuIconColor }}; menuIconUnique: icon {{ "menu/unique", menuIconColor }}; +menuIconNftWear: icon {{ "menu/nft_wear", menuIconColor }}; +menuIconNftTakeOff: icon {{ "menu/nft_takeoff", menuIconColor }}; menuIconTTLAny: icon {{ "menu/auto_delete_plain", menuIconColor }}; menuIconTTLAnyTextPosition: point(11px, 22px);