From 71cbb037ce88fc8fbe57010ee664444df927af18 Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Fri, 31 Oct 2025 15:35:11 +0300 Subject: [PATCH] Added new action button for chat management to profile top bar. --- .../Resources/icons/profile/profile_manage.png | Bin 0 -> 606 bytes .../icons/profile/profile_manage@2x.png | Bin 0 -> 1079 bytes .../icons/profile/profile_manage@3x.png | Bin 0 -> 1487 bytes Telegram/Resources/langs/lang.strings | 1 + Telegram/SourceFiles/info/info.style | 1 + .../info/profile/info_profile_top_bar.cpp | 15 +++++++++++++++ 6 files changed, 17 insertions(+) create mode 100644 Telegram/Resources/icons/profile/profile_manage.png create mode 100644 Telegram/Resources/icons/profile/profile_manage@2x.png create mode 100644 Telegram/Resources/icons/profile/profile_manage@3x.png diff --git a/Telegram/Resources/icons/profile/profile_manage.png b/Telegram/Resources/icons/profile/profile_manage.png new file mode 100644 index 0000000000000000000000000000000000000000..38f1a731dd7b2ecc0f50d2c5ccc45b951b0bbe1c GIT binary patch literal 606 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgf?1ZO_V~B;| z-4NULjE*9Ad&Q5styFv{o}=p6$id3Ha8Y#NFJ_^+m*fM4_PQuf%yD#f>ByTLs;QzC z;{E8h^}Q1_HmtdRE2-$)z2f(0{yy2U{;$vZiI#Ky90jhu{<`^9u&0gO{IhA(_vhQl z?T%UJuNxVsAYd`qufRxxCnS_LVr>{-d-Kyh2W_sN+$7WKvgu~d+OWr!`(pH-7wxRt zdoRaKvz_(#-+foJGG`s*T3=x|U%uac^2=$a>#ut!)f9_$yS{qbzUXC1*7n=Y2NRZG zZZr_#didu1@4I=^iy|7tLsy4}6&-$AA~ikVY_`|ZOBp8To`25UF6`RChj zrybc8p)={^l7*bAcP9I~gsr~%woIOn{mQ%ewO?Lz+*`n{BgWm8U^d%*@x`K@SDs36 z3u-=6ZB%AH(Y*1jF>|E*yFkV(j7Ob(9|(S3c&0kzV#bsyb6!O}`2M@rE`DKv##FBf z?S~(h?Y{f^s{y~x+b;FVoR!~Z3v()^y@)Q+ubNS{(>z6K;)e>GkdF*W8zZ!)o=Pz~ z{7}H$a}rB@*CLw>J@tlrXC&@8V6)hm!Qi1)p=9+ViyYB6VnP<%c+1YIhv{3I&E}o` de(5i1(fuk)a*MW1xMT~8TTfR%mvv4FO#rO2^i=== literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/profile/profile_manage@2x.png b/Telegram/Resources/icons/profile/profile_manage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e5ab30a5183b9fa45fc2174fb514f992de3a9f06 GIT binary patch literal 1079 zcmV-71jze|P)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NFp-DtRR9Fe^SUpH9K@g5H5|xA~ zq98=UB9+)AQ43KKY=sa|#6m1Yu(DII5X3I1jfjmlYA0$TScHfML6Sl&{6SEx6bpkS zF~lF#_dZx0*6bd++$Dj>yQ}7A=kI1_=jTi&<1sv7c;G+tKxx+Rwb^W4U0od=9rg9~ zA0HpdWHKvDp$M9qnl?8#-`?K-aL?`S?cm^GNl8hev?|H%>+6FvI7@zk2L}fg6%|Un z`Ntzhh|Vt)gqQvO{j##Myz7?akkx9118Qn&n6j_0ubrKp_4W0$v$LwIs=B&5hIhGK zu~;k`jpp5^Oo1aKBjk?f=jXPzHlnatEQ^babb5DpS6V9hB%;>XN%S+}11PgawFn$j zkvU=D`=zBNlr)jcBBDZ}5UxGLFE1}cJzPa(Jv}``LqqHpZf|aGP9zd^suFL>-;b*8^?K*#=3pEh!CbXMb<#~wPm@+9;PLShrt4IsmL08XZEa1- z6yQ;xT3TAvipv+>`1m+#v1r!z_BP6NzO-b>krYOr!fv;t%XW8nWA=D@dP0c`hr_3* zr#y`T7uN$>LZ;IgkH>>>qgK_{*5Xzo+&nVXAilr9dwY8i4-bD1O&E@kkB?hhTN!3%W(MZcsUm<%h>3?j zMKgdgT-1Sqm;@dj9f<@I%=!5_@#q1@#>PbHn87i$FtO5kNHU;3JUobkG+?lzh+G)@ z5IBaHjzp3HZFF>Wc6PS0u~8J46$5=(x*3_@@1LKaM<(%HKq5gI=H}*xKPm`}h+sFO zKrbvTU~?i(NFcsGVc(*o0s<2g6J!v8i;IguATTvGwY9bN`T0plu$y96Kx-fx`!%*~ zQY;0qr_9|kH*G3?-VpjF|o4K6ls7OoZk@1Sb)lo_zRQfCn9 xd38FS7(eif0u4^v-mOQw!E1QH@W4Odfxj>bmR2TS{F49x002ovPDHLkV1g)U*y;cP literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/profile/profile_manage@3x.png b/Telegram/Resources/icons/profile/profile_manage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..8bf97111c72722e6d87cc6612b1ecc8d626e126d GIT binary patch literal 1487 zcmZ8hc{Cda7!PrVkSMjN=ZqsnL#NJmjfj!B>jnuKDc0KXMlmwmI8>Rh5^J*N`z1m0ssJ(i2#5?7CDKP ziT;yyCYHlCs4YkrRU(e8>}yK#=oxh#b@+7cAmpk*Zi2-uH> z!HhMuwP0`1SY3sW1yEgyb2-ME?rK1aAT5V*biDd1nxD9Fd$)b1YpA_tBXpx>$}j$T z^v>0rYb~uk8suKl|4NKscPNk)9v*IEW8?4dkHxZQW@fgxwVu`0&9w9*;LXJnV1x!|C|AI7VPSEbG;)Lm7d6{WL1Ia!6rSKC$sQGY8}WA1dlyEG{k{pB&Fu4$;s_Qo@bQ&&v~Vm;sZV zCMMHCir?|#g%gIa-lym4>N*qs2Q<+)p4HmQ0V%7i%iB9G^g);d(?D}GGksr^CnY5y zFt~v7ZLyP)krAWPz8Qzd=Z$Qg9~c}AQUZ#_a)k3JE{25;1?vUp<>o?32wPmTbsFQR z1n%Z0(ajCgkH6+oY6|yGIA1#<>{EWeBB@T(5S$lP^*Mj5@M&slsneS5RbLGa4I?5VdU|?P{aC&jFKsxS zJvB8I0Y9AtlBs0@Tr7s#&y0U!xP!YS)uhN$a|8TBE{$8wea3C%vKWCCC{?T!TN*3l zg0!hZAP}REXA{C8gV1-D2Dy#{r=tAED)XJ3o$dO6QM^jb`0BFp`kb*bq@7uzixd?^ za?l4QivfKgu++Lu8+gHmLWQo|Bjx^DX>;W{!f-0HHpElal;0whV!Z`b<=*M>Mk)6Z zrjLDiH}BC!bj}*c)S?FP>2YEy83+Sq=0LDU0~;*+zNNfe)5@x(ulK%AX|+HgsIAq{ zYkm4Om`whal5;~bg~Q=EID~|(baw-!8)HfzJxT^4ZW@H3-JnYkQ#k4^D0;H0LV$(6 zyfj!@t`Ydy%-no`7P2}bsY~2jNvrwBYf-n@Dj}oUHn)b(F?BVmig-Y^1c?mBe`mO5 zt8c5#{ES1^Yo$<&iqOY-RJ26{)XyWKcv=!>hwR^9dDmya{J$(v04hz^jOM zLBPwGFCYBqCS^gn<5Bs$-xXQU^Pbxhp9InywB`ce{`EVA`;4T6b9}{y@ma controller) { if (chechMax()) { return; } + if (EditPeerInfoBox::Available(peer)) { + const auto manage = Ui::CreateChild( + this, + tr::lng_profile_action_short_manage(tr::now), + st::infoProfileTopBarActionManage); + manage->setClickedCallback([=, window = controller] { + window->showEditPeerBox(peer); + }); + buttons.push_back(manage); + _actions->add(manage); + } + if (chechMax()) { + return; + } { const auto channel = peer->asBroadcast(); if (!user && !channel) {