diff --git a/Telegram/Resources/langs/rewrites/en.json b/Telegram/Resources/langs/rewrites/en.json index c808cde32..0904564fa 100644 --- a/Telegram/Resources/langs/rewrites/en.json +++ b/Telegram/Resources/langs/rewrites/en.json @@ -106,6 +106,8 @@ "ktg_settings_messages": "Messages", "ktg_settings_filters_hide_all": "Hide \"All chats\" folder", "ktg_hide_pinned_message": "Hide", + "ktg_stickers_copy_title": "Copy name", + "ktg_stickers_title_copied": "Sticker pack name copied to clipboard.", "ktg_settings_userpic_rounding": "Profile pictures rounding", "ktg_settings_userpic_rounding_none": "Square", "ktg_settings_userpic_rounding_small": "Small", diff --git a/Telegram/SourceFiles/boxes/sticker_set_box.cpp b/Telegram/SourceFiles/boxes/sticker_set_box.cpp index 0297dd364..0e333cbfc 100644 --- a/Telegram/SourceFiles/boxes/sticker_set_box.cpp +++ b/Telegram/SourceFiles/boxes/sticker_set_box.cpp @@ -7,6 +7,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL */ #include "boxes/sticker_set_box.h" +#include "kotato/kotato_lang.h" #include "data/data_document.h" #include "data/data_session.h" #include "data/data_file_origin.h" @@ -282,6 +283,14 @@ void StickerSetBox::copyStickersLink() { QGuiApplication::clipboard()->setText(url); } +void StickerSetBox::copyTitle() { + _inner->title( + ) | rpl::start_with_next([](const TextWithEntities &value) { + QGuiApplication::clipboard()->setText(value.text); + Ui::show(Box(ktr("ktg_stickers_title_copied"))); + }, lifetime()); +} + void StickerSetBox::handleError(Error error) { const auto guard = gsl::finally(crl::guard(this, [=] { closeBox(); @@ -411,6 +420,11 @@ bool StickerSetBox::showMenu(not_null button) { }); button->installEventFilter(_menu); + _menu->addAction( + ktr("ktg_stickers_copy_title"), + [=] { copyTitle(); }, + &st::menuIconCopy); + if (!_inner->shortName().isEmpty()) { _menu->addAction( tr::lng_stickers_share_pack(tr::now), diff --git a/Telegram/SourceFiles/boxes/sticker_set_box.h b/Telegram/SourceFiles/boxes/sticker_set_box.h index 603bb5aa1..0957fc3ac 100644 --- a/Telegram/SourceFiles/boxes/sticker_set_box.h +++ b/Telegram/SourceFiles/boxes/sticker_set_box.h @@ -47,6 +47,7 @@ private: bool showMenu(not_null button); void addStickers(); void copyStickersLink(); + void copyTitle(); void handleError(Error error); const not_null _controller;