diff --git a/Telegram/Resources/icons/menu/affiliate_simple.png b/Telegram/Resources/icons/menu/affiliate_simple.png new file mode 100644 index 000000000..c09ce88fc Binary files /dev/null and b/Telegram/Resources/icons/menu/affiliate_simple.png differ diff --git a/Telegram/Resources/icons/menu/affiliate_simple@2x.png b/Telegram/Resources/icons/menu/affiliate_simple@2x.png new file mode 100644 index 000000000..3e41ea427 Binary files /dev/null and b/Telegram/Resources/icons/menu/affiliate_simple@2x.png differ diff --git a/Telegram/Resources/icons/menu/affiliate_simple@3x.png b/Telegram/Resources/icons/menu/affiliate_simple@3x.png new file mode 100644 index 000000000..d075a10bd Binary files /dev/null and b/Telegram/Resources/icons/menu/affiliate_simple@3x.png differ diff --git a/Telegram/Resources/icons/menu/affiliate_transparent.png b/Telegram/Resources/icons/menu/affiliate_transparent.png new file mode 100644 index 000000000..abcd00046 Binary files /dev/null and b/Telegram/Resources/icons/menu/affiliate_transparent.png differ diff --git a/Telegram/Resources/icons/menu/affiliate_transparent@2x.png b/Telegram/Resources/icons/menu/affiliate_transparent@2x.png new file mode 100644 index 000000000..ffbc05cba Binary files /dev/null and b/Telegram/Resources/icons/menu/affiliate_transparent@2x.png differ diff --git a/Telegram/Resources/icons/menu/affiliate_transparent@3x.png b/Telegram/Resources/icons/menu/affiliate_transparent@3x.png new file mode 100644 index 000000000..54185c44c Binary files /dev/null and b/Telegram/Resources/icons/menu/affiliate_transparent@3x.png differ diff --git a/Telegram/Resources/icons/menu/bot.png b/Telegram/Resources/icons/menu/bot.png new file mode 100644 index 000000000..5a890cf8b Binary files /dev/null and b/Telegram/Resources/icons/menu/bot.png differ diff --git a/Telegram/Resources/icons/menu/bot@2x.png b/Telegram/Resources/icons/menu/bot@2x.png new file mode 100644 index 000000000..aaa8dc9af Binary files /dev/null and b/Telegram/Resources/icons/menu/bot@2x.png differ diff --git a/Telegram/Resources/icons/menu/bot@3x.png b/Telegram/Resources/icons/menu/bot@3x.png new file mode 100644 index 000000000..59a23832b Binary files /dev/null and b/Telegram/Resources/icons/menu/bot@3x.png differ diff --git a/Telegram/Resources/icons/menu/bot_add.png b/Telegram/Resources/icons/menu/bot_add.png new file mode 100644 index 000000000..aadbec32d Binary files /dev/null and b/Telegram/Resources/icons/menu/bot_add.png differ diff --git a/Telegram/Resources/icons/menu/bot_add@2x.png b/Telegram/Resources/icons/menu/bot_add@2x.png new file mode 100644 index 000000000..0eea54a25 Binary files /dev/null and b/Telegram/Resources/icons/menu/bot_add@2x.png differ diff --git a/Telegram/Resources/icons/menu/bot_add@3x.png b/Telegram/Resources/icons/menu/bot_add@3x.png new file mode 100644 index 000000000..e89bb32eb Binary files /dev/null and b/Telegram/Resources/icons/menu/bot_add@3x.png differ diff --git a/Telegram/Resources/icons/menu/stars_share.png b/Telegram/Resources/icons/menu/stars_share.png new file mode 100644 index 000000000..30871b111 Binary files /dev/null and b/Telegram/Resources/icons/menu/stars_share.png differ diff --git a/Telegram/Resources/icons/menu/stars_share@2x.png b/Telegram/Resources/icons/menu/stars_share@2x.png new file mode 100644 index 000000000..e431b7ce4 Binary files /dev/null and b/Telegram/Resources/icons/menu/stars_share@2x.png differ diff --git a/Telegram/Resources/icons/menu/stars_share@3x.png b/Telegram/Resources/icons/menu/stars_share@3x.png new file mode 100644 index 000000000..2e7d14973 Binary files /dev/null and b/Telegram/Resources/icons/menu/stars_share@3x.png differ diff --git a/Telegram/Resources/icons/settings/premium/business/earn_stars.png b/Telegram/Resources/icons/settings/premium/business/earn_stars.png new file mode 100644 index 000000000..84419b169 Binary files /dev/null and b/Telegram/Resources/icons/settings/premium/business/earn_stars.png differ diff --git a/Telegram/Resources/icons/settings/premium/business/earn_stars@2x.png b/Telegram/Resources/icons/settings/premium/business/earn_stars@2x.png new file mode 100644 index 000000000..3f6b9e30f Binary files /dev/null and b/Telegram/Resources/icons/settings/premium/business/earn_stars@2x.png differ diff --git a/Telegram/Resources/icons/settings/premium/business/earn_stars@3x.png b/Telegram/Resources/icons/settings/premium/business/earn_stars@3x.png new file mode 100644 index 000000000..19823b48b Binary files /dev/null and b/Telegram/Resources/icons/settings/premium/business/earn_stars@3x.png differ diff --git a/Telegram/SourceFiles/info/bot/starref/info_bot_starref_join_widget.cpp b/Telegram/SourceFiles/info/bot/starref/info_bot_starref_join_widget.cpp index 9e82b101a..be5834f29 100644 --- a/Telegram/SourceFiles/info/bot/starref/info_bot_starref_join_widget.cpp +++ b/Telegram/SourceFiles/info/bot/starref/info_bot_starref_join_widget.cpp @@ -24,6 +24,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "ui/effects/premium_top_bar.h" #include "ui/layers/generic_box.h" #include "ui/text/text_utilities.h" +#include "ui/widgets/menu/menu_add_action_callback.h" +#include "ui/widgets/menu/menu_add_action_callback_factory.h" #include "ui/widgets/buttons.h" #include "ui/widgets/continuous_sliders.h" #include "ui/widgets/labels.h" @@ -318,7 +320,7 @@ void ListController::showLink(not_null peer, RowState state) { box->addButton(tr::lng_star_ref_link_copy(), [=] { QApplication::clipboard()->setText(state.link); - window->showToast(u"Link copied to clipboard."_q); + window->showToast(tr::lng_username_copied(tr::now)); }); box->addButton(tr::lng_cancel(), [=] { box->closeBox(); @@ -398,14 +400,17 @@ base::unique_qptr ListController::rowContextMenu( auto result = base::make_unique_q( parent, st::popupMenuWithIcons); - result->addAction(tr::lng_star_ref_list_my_open(tr::now), [=] { + const auto addAction = Ui::Menu::CreateAddActionCallback(result.get()); + + addAction(tr::lng_star_ref_list_my_open(tr::now), [=] { _controller->parentController()->showPeerHistory(peer); - }, &st::menuIconBotCommands); - result->addAction(tr::lng_star_ref_list_my_copy(tr::now), [=] { + }, &st::menuIconBot); + addAction(tr::lng_star_ref_list_my_copy(tr::now), [=] { QApplication::clipboard()->setText(state.link); - _controller->parentController()->showToast(u"Link copied to clipboard."_q); + _controller->parentController()->showToast( + tr::lng_username_copied(tr::now)); }, &st::menuIconLinks); - result->addAction(tr::lng_star_ref_list_my_leave(tr::now), [=] { + const auto revoke = [=] { session().api().request(MTPpayments_EditConnectedStarRefBot( MTP_flags(MTPpayments_EditConnectedStarRefBot::Flag::f_revoked), _peer->input, @@ -415,7 +420,13 @@ base::unique_qptr ListController::rowContextMenu( }).fail([=](const MTP::Error &error) { _controller->parentController()->showToast(u"Failed: "_q + error.type()); }).send(); - }, &st::menuIconLeaveAttention); + }; + addAction({ + .text = tr::lng_star_ref_list_my_leave(tr::now), + .handler = revoke, + .icon = &st::menuIconLeaveAttention, + .isAttention = true, + }); return result; } @@ -477,12 +488,12 @@ void InnerWidget::setupInfo() { _container->add(infoRow( tr::lng_star_ref_transparent_title(), tr::lng_star_ref_transparent_about(), - &st::menuIconShowInChat)); + &st::menuIconTransparent)); _container->add(infoRow( tr::lng_star_ref_simple_title(), tr::lng_star_ref_simple_about(), - &st::menuIconBoosts)); + &st::menuIconLike)); } void InnerWidget::setupMy() { diff --git a/Telegram/SourceFiles/info/bot/starref/info_bot_starref_setup_widget.cpp b/Telegram/SourceFiles/info/bot/starref/info_bot_starref_setup_widget.cpp index 4ba776b1d..fc7e4605c 100644 --- a/Telegram/SourceFiles/info/bot/starref/info_bot_starref_setup_widget.cpp +++ b/Telegram/SourceFiles/info/bot/starref/info_bot_starref_setup_widget.cpp @@ -135,7 +135,7 @@ void InnerWidget::setupInfo() { _container->add(infoRow( tr::lng_star_ref_share_title(), tr::lng_star_ref_share_about(), - &st::menuIconPremium)); + &st::menuIconStarRefShare)); _container->add(infoRow( tr::lng_star_ref_launch_title(), @@ -650,7 +650,7 @@ not_null AddViewListButton( }, dummy->lifetime()); ::Settings::AddButtonIcon(dummy, st::settingsButton, { - .icon = &st::settingsPremiumIconStar, + .icon = &st::settingsStarRefEarnStars, .backgroundBrush = st::premiumIconBg3, }); diff --git a/Telegram/SourceFiles/settings/settings.style b/Telegram/SourceFiles/settings/settings.style index 050fffc73..894dac513 100644 --- a/Telegram/SourceFiles/settings/settings.style +++ b/Telegram/SourceFiles/settings/settings.style @@ -123,6 +123,8 @@ settingsBusinessPromoChatbots: icon {{ "settings/premium/promo/business_chatbot" settingsBusinessPromoChatIntro: icon {{ "settings/premium/promo/business_intro", premiumButtonBg1 }}; settingsBusinessPromoChatLinks: icon {{ "settings/premium/promo/business_chatlink", premiumButtonBg1 }}; +settingsStarRefEarnStars: icon {{ "settings/premium/business/earn_stars", settingsIconFg }}; + settingsPremiumNewBadge: FlatLabel(defaultFlatLabel) { style: TextStyle(semiboldTextStyle) { font: font(10px semibold); diff --git a/Telegram/SourceFiles/ui/menu_icons.style b/Telegram/SourceFiles/ui/menu_icons.style index 7bb7b5302..c288c397d 100644 --- a/Telegram/SourceFiles/ui/menu_icons.style +++ b/Telegram/SourceFiles/ui/menu_icons.style @@ -138,6 +138,7 @@ menuIconSigned: icon {{ "menu/signed", menuIconColor }}; menuIconAntispam: icon {{ "menu/antispam", menuIconColor }}; menuIconChatDiscuss: icon {{ "menu/chat_discuss", menuIconColor }}; menuIconChats: icon {{ "menu/chats", menuIconColor }}; +menuIconBot: icon {{ "menu/bot", menuIconColor }}; menuIconBotCommands: icon {{ "menu/bot_commands", menuIconColor }}; menuIconPremium: icon {{ "menu/premium", menuIconColor }}; menuIconShop: icon {{ "menu/shop", menuIconColor }}; @@ -162,7 +163,10 @@ menuIconAppleWatch: icon {{ "menu/passcode_watch", menuIconColor }}; menuIconSystemPwd: menuIconPermissions; menuIconPlayerFullScreen: icon {{ "player/player_fullscreen", menuIconColor }}; menuIconPlayerWindowed: icon {{ "player/player_minimize", menuIconColor }}; -menuIconStarRefLink: icon{{ "settings/premium/features/feature_links2", menuIconColor }}; +menuIconStarRefShare: icon {{ "menu/stars_share", menuIconColor }}; +menuIconStarRefLink: icon {{ "settings/premium/features/feature_links2", menuIconColor }}; +menuIconTransparent: icon {{ "menu/affiliate_transparent", menuIconColor }}; +menuIconLike: icon {{ "menu/affiliate_simple", menuIconColor }}; menuIconTTLAny: icon {{ "menu/auto_delete_plain", menuIconColor }}; menuIconTTLAnyTextPosition: point(11px, 22px);