From 576671e22263f33a909b21426a2968de503bd292 Mon Sep 17 00:00:00 2001 From: ZavaruKitsu Date: Tue, 1 Aug 2023 12:45:59 +0000 Subject: [PATCH] feat: don't read stories feat: show message ID in tooltip feat: update strings fix: invert strings --- Telegram/Resources/langs/lang.strings | 59 +++++++++++------- Telegram/SourceFiles/ayu/ayu_settings.cpp | 51 +++++++++++---- Telegram/SourceFiles/ayu/ayu_settings.h | 32 ++++++---- Telegram/SourceFiles/ayu/ayu_state.cpp | 2 +- .../ayu/ui/boxes/confirmation_box.cpp | 6 +- .../ayu/ui/settings/settings_ayu.cpp | 62 ++++++++++++------- .../chat_helpers/gifs_list_widget.cpp | 2 +- Telegram/SourceFiles/data/data_histories.cpp | 4 +- Telegram/SourceFiles/data/data_stories.cpp | 24 +++++-- .../SourceFiles/history/history_widget.cpp | 2 +- .../history/view/history_view_element.cpp | 3 + Telegram/SourceFiles/tray.cpp | 8 +-- .../SourceFiles/window/window_main_menu.cpp | 18 +++--- Telegram/lib_ui | 2 +- 14 files changed, 174 insertions(+), 101 deletions(-) diff --git a/Telegram/Resources/langs/lang.strings b/Telegram/Resources/langs/lang.strings index b0260f9dc..ff41a5ef9 100644 --- a/Telegram/Resources/langs/lang.strings +++ b/Telegram/Resources/langs/lang.strings @@ -3948,31 +3948,35 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL "ayu_AyuPreferences" = "AyuGram Preferences"; "ayu_GhostEssentialsHeader" = "Ghost essentials"; -"ayu_SendReadPackets" = "Send read status"; -"ayu_SendOnlinePackets" = "Send online status"; -"ayu_SendUploadProgress" = "Send typing & upload status"; +"ayu_DontReadMessages" = "Don't read messages"; +"ayu_DontReadStories" = "Don't read stories"; +"ayu_DontSendOnlinePackets" = "Don't send online"; +"ayu_DontSendUploadProgress" = "Don't send typing"; "ayu_SendOfflinePacketAfterOnline" = "Immediate offline after online"; "ayu_MarkReadAfterSend" = "Send read status after reply"; "ayu_UseScheduledMessages" = "Schedule messages"; "ayu_SpyEssentialsHeader" = "Spy essentials"; "ayu_SaveDeletedMessages" = "Save deleted messages"; "ayu_SaveMessagesHistory" = "Save edits history"; -"ayu_MessageSavingBtn" = "Message saving Preferences"; +"ayu_MessageSavingBtn" = "Message Saving Preferences"; "ayu_MessageSavingMediaHeader" = "Media"; "ayu_MessageSavingSaveMedia" = "Save media"; -"ayu_MessageSavingSaveMediaInPrivateChats" = "…in private chats"; -"ayu_MessageSavingSaveMediaInPublicChannels" = "…in public channels"; -"ayu_MessageSavingSaveMediaInPrivateChannels" = "…in private channels"; -"ayu_MessageSavingSaveMediaInPublicGroups" = "…in public groups"; -"ayu_MessageSavingSaveMediaInPrivateGroups" = "…in private groups"; +"ayu_MessageSavingSaveMediaHint" = "Click for more"; +"ayu_MessageSavingSaveMediaInPrivateChats" = "…in private chats"; +"ayu_MessageSavingSaveMediaInPublicChannels" = "…in public channels"; +"ayu_MessageSavingSaveMediaInPrivateChannels" = "…in private channels"; +"ayu_MessageSavingSaveMediaInPublicGroups" = "…in public groups"; +"ayu_MessageSavingSaveMediaInPrivateGroups" = "…in private groups"; "ayu_MessageSavingOtherHeader" = "Other"; "ayu_MessageSavingSaveFormatting" = "Save formatting"; "ayu_MessageSavingSaveReactions" = "Save reactions"; +"ayu_MessageSavingSaveForBots" = "Save in bot dialogs"; "ayu_QoLTogglesHeader" = "Useful features"; -"ayu_ShowFromChannel" = "Show «channel» label"; -"ayu_KeepAliveService" = "Keep Alive Service"; -"ayu_EnableAds" = "Enable ads"; +"ayu_KeepAliveService" = "AyuGram Push Service"; +"ayu_DisableStories" = "Disable stories"; +"ayu_DisableAds" = "Disable ads"; "ayu_LocalPremium" = "Local Telegram Premium"; +"ayu_CopyUsernameAsLink" = "Copy username as link"; "ayu_CustomizationHeader" = "Customization"; "ayu_DeletedMarkText" = "Deleted mark"; "ayu_EditedMarkText" = "Edited mark"; @@ -3982,14 +3986,14 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL "ayu_SettingsShowID_Hide" = "Hide"; "ayu_SettingsRecentStickersCount" = "Recent stickers count"; "ayu_SettingsCustomizationHint" = "After making changes to the \"Customization\" section, you must restart the application."; -"ayu_RegexFilters" = "Message filters"; -"ayu_RegexFiltersSubText" = "filters"; +"ayu_RegexFilters" = "Message Filters"; +"ayu_RegexFiltersAmount" = "filters"; "ayu_RegexFiltersHeader" = "Filters"; "ayu_RegexFiltersEnableInChats" = "Enable in chats"; "ayu_RegexFiltersCaseInsensitive" = "Case insensitive expressions"; "ayu_RegexFiltersAdd" = "Add filter"; "ayu_RegexFiltersEdit" = "Edit filter"; -"ayu_RegexFiltersAddDescription_Android" = "You can use site regex101.com]]> to fully test your regular expression.\nYou can also use plain text, but don't forget to escape brackets."; +"ayu_RegexFiltersPlaceholder" = "Expression"; "ayu_RegexFiltersAddError" = "Regex syntax error"; "ayu_AyuSyncHeader" = "AyuSync"; "ayu_AyuSyncStatusTitle" = "Sync status"; @@ -3999,12 +4003,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL "ayu_AyuSyncStatusErrorNoToken" = "no token"; "ayu_AyuSyncStatusErrorInvalidToken" = "invalid token"; "ayu_AyuSyncStatusErrorNoMVP" = "no MVP"; -"ayu_AyuSyncServerURL" = "AyuSync URL"; -"ayu_AyuSyncServerToken" = "AyuSync token"; +"ayu_AyuSyncServerURL" = "Server URL"; +"ayu_AyuSyncServerToken" = "Access token"; "ayu_AyuSyncEnable" = "Enable synchronization"; "ayu_AyuSyncVisitProfile" = "Visit profile"; "ayu_AyuSyncForceSync" = "Force sync clients"; -"ayu_AyuSyncDeviceIdentifier" = "Device identifier"; +"ayu_AyuSyncDeviceIdentifier" = "Device ID"; "ayu_AyuSyncLastEventSent" = "Last sent event"; "ayu_AyuSyncLastEventReceived" = "Last received event"; "ayu_AyuSyncLastEventNever" = "never"; @@ -4014,30 +4018,37 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL "ayu_AyuSyncOpenPreferences" = "Open preferences"; "ayu_AyuSyncDownloadAgent" = "Download agent"; "ayu_WALMode" = "Enable WAL mode"; -"ayu_CleanDatabase" = "Clean database"; -"ayu_CleanDatabaseNotification" = "AyuGram database cleaned"; -"ayu_BetaFeatures" = "Beta features"; +"ayu_ClearAyuDatabase" = "Clear Ayu Database"; +"ayu_ClearAyuDatabaseNotification" = "AyuGram database cleared"; +"ayu_EraseLocalDatabase" = "Erase Local Database"; +"ayu_ConfirmationsTitle" = "Confirmations"; "ayu_StickerConfirmation" = "Confirmation when sending stickers"; "ayu_GIFConfirmation" = "Confirmation when sending GIFs"; "ayu_VoiceConfirmation" = "Confirmation when sending voice messages"; "ayu_EnableGhostMode" = "Enable Ghost"; "ayu_DisableGhostMode" = "Disable Ghost"; "ayu_KillApp" = "Kill App"; -"ayu_DrawerGhostModeToggle" = "Ghost Mode"; +"ayu_LReadMessages" = "Read on Local"; +"ayu_SReadMessages" = "Read on Server"; +"ayu_GhostModeToggle" = "Ghost Mode"; "ayu_GhostModeEnabled" = "Ghost mode turned on"; "ayu_GhostModeDisabled" = "Ghost mode turned off"; "ayu_EditsHistoryTitle" = "Edits history"; "ayu_EditsHistoryMenuText" = "History"; "ayu_ReadUntilMenuText" = "Read until"; +"ayu_DeleteKeepLocally" = "Keep locally"; "ayu_BoxActionReset" = "Reset"; "ayu_ReadConfirmationBoxQuestion" = "Do you want to read all messages?"; "ayu_ReadConfirmationBoxActionText" = "Read"; -"ayu_ForwardsRestrictedInfoDeleted" = "Forwarding of a deleted message is not supported."; +"ayu_AyuForwardStatusForwarding" = "Forwarding messages…"; +"ayu_AyuForwardStatusLoadingMedia" = "Loading media…"; +"ayu_AyuForwardForwardingDescription" = "Please keep this window open while AyuGram is forwarding your messages."; +"ayu_AyuForwardLoadingMediaDescription" = "Please keep this window open while AyuGram is downloading media from your messages."; "ayu_DeleteDateMenuText" = "Delete Date"; "ayu_LikelyOfflineStatus" = "offline ?"; "ayu_GhostModeShortcut" = "Enter with Ghost"; -"ayu_SettingsWatermark" = "AyuGram developed and maintained by Radolyn Labs."; "ayu_SettingsShowMessageSeconds" = "Show message seconds"; "ayu_ContextCopyID" = "Copy ID"; "ayu_IDCopiedToast" = "ID copied to clipboard."; "ayu_ContextHideMessage" = "Hide"; +"ayu_SettingsWatermark" = "AyuGram developed and maintained by Radolyn Labs."; diff --git a/Telegram/SourceFiles/ayu/ayu_settings.cpp b/Telegram/SourceFiles/ayu/ayu_settings.cpp index 27f4b29b1..4dd353ed4 100644 --- a/Telegram/SourceFiles/ayu/ayu_settings.cpp +++ b/Telegram/SourceFiles/ayu/ayu_settings.cpp @@ -17,7 +17,8 @@ namespace AyuSettings const QString filename = "tdata/ayu_settings.json"; std::optional settings = std::nullopt; - rpl::variable sendReadPacketsReactive; + rpl::variable sendReadMessagesReactive; + rpl::variable sendReadStoriesReactive; rpl::variable sendOnlinePacketsReactive; rpl::variable sendUploadProgressReactive; rpl::variable sendOfflinePacketAfterOnlineReactive; @@ -32,10 +33,12 @@ namespace AyuSettings bool ghostModeEnabled_util(AyuGramSettings& settingsUtil) { - return (!settingsUtil.sendReadPackets + return + !settingsUtil.sendReadMessages + && !settingsUtil.sendReadStories && !settingsUtil.sendOnlinePackets && !settingsUtil.sendUploadProgress - && settingsUtil.sendOfflinePacketAfterOnline); + && settingsUtil.sendOfflinePacketAfterOnline; } void initialize() @@ -47,13 +50,22 @@ namespace AyuSettings settings = AyuGramSettings(); - sendReadPacketsReactive.value() | rpl::filter([=](bool val) + sendReadMessagesReactive.value() | rpl::filter([=](bool val) { - return (val != settings->sendReadPackets); + return (val != settings->sendReadMessages); }) | start_with_next([=](bool val) { ghostModeEnabled = ghostModeEnabled_util(settings.value()); }, lifetime); + // .. + sendReadStoriesReactive.value() | rpl::filter([=](bool val) + { + return (val != settings->sendReadStories); + }) | start_with_next([=](bool val) + { + ghostModeEnabled = ghostModeEnabled_util(settings.value()); + }, lifetime); + // .. sendOnlinePacketsReactive.value() | rpl::filter([=](bool val) { return (val != settings->sendOnlinePackets); @@ -61,6 +73,7 @@ namespace AyuSettings { ghostModeEnabled = ghostModeEnabled_util(settings.value()); }, lifetime); + // .. sendUploadProgressReactive.value() | rpl::filter([=](bool val) { return (val != settings->sendUploadProgress); @@ -68,6 +81,7 @@ namespace AyuSettings { ghostModeEnabled = ghostModeEnabled_util(settings.value()); }, lifetime); + // .. sendOfflinePacketAfterOnlineReactive.value() | rpl::filter([=](bool val) { return (val != settings->sendOfflinePacketAfterOnline); @@ -79,7 +93,7 @@ namespace AyuSettings void postinitialize() { - sendReadPacketsReactive = settings->sendReadPackets; + sendReadMessagesReactive = settings->sendReadMessages; sendOnlinePacketsReactive = settings->sendOnlinePackets; deletedMarkReactive = settings->deletedMark; @@ -133,10 +147,16 @@ namespace AyuSettings postinitialize(); } - void AyuGramSettings::set_sendReadPackets(bool val) + void AyuGramSettings::set_sendReadMessages(bool val) { - sendReadPackets = val; - sendReadPacketsReactive = val; + sendReadMessages = val; + sendReadMessagesReactive = val; + } + + void AyuGramSettings::set_sendReadStories(bool val) + { + sendReadStories = val; + sendReadStoriesReactive = val; } void AyuGramSettings::set_sendOnlinePackets(bool val) @@ -157,6 +177,15 @@ namespace AyuSettings sendOfflinePacketAfterOnlineReactive = val; } + void AyuGramSettings::set_ghostModeEnabled(bool val) + { + set_sendReadMessages(!val); + set_sendReadStories(!val); + set_sendOnlinePackets(!val); + set_sendUploadProgress(!val); + set_sendOfflinePacketAfterOnline(val); + } + void AyuGramSettings::set_markReadAfterSend(bool val) { markReadAfterSend = val; @@ -220,9 +249,9 @@ namespace AyuSettings stickerConfirmation = val; } - void AyuGramSettings::set_GIFConfirmation(bool val) + void AyuGramSettings::set_gifConfirmation(bool val) { - GIFConfirmation = val; + gifConfirmation = val; } void AyuGramSettings::set_voiceConfirmation(bool val) diff --git a/Telegram/SourceFiles/ayu/ayu_settings.h b/Telegram/SourceFiles/ayu/ayu_settings.h index 8bfe62794..cbb27837d 100644 --- a/Telegram/SourceFiles/ayu/ayu_settings.h +++ b/Telegram/SourceFiles/ayu/ayu_settings.h @@ -20,13 +20,13 @@ namespace AyuSettings AyuGramSettings() { // ~ Ghost essentials - sendReadPackets = true; + sendReadMessages = true; + sendReadStories = true; sendOnlinePackets = true; sendUploadProgress = true; - sendOfflinePacketAfterOnline = false; - markReadAfterSend = true; + markReadAfterSend = true; useScheduledMessages = false; // ~ Message edits & deletion history @@ -35,6 +35,7 @@ namespace AyuSettings // ~ QoL toggles enableAds = false; + disableStories = false; copyUsernameAsLink = true; // ~ Customization @@ -52,13 +53,14 @@ namespace AyuSettings showMessageSeconds = false; - // ~ Beta functionality + // ~ Confirmations stickerConfirmation = false; - GIFConfirmation = false; + gifConfirmation = false; voiceConfirmation = false; } - bool sendReadPackets; + bool sendReadMessages; + bool sendReadStories; bool sendOnlinePackets; bool sendUploadProgress; bool sendOfflinePacketAfterOnline; @@ -67,6 +69,8 @@ namespace AyuSettings bool saveDeletedMessages; bool saveMessagesHistory; bool enableAds; + bool disableStories; + bool copyUsernameAsLink; QString deletedMark; QString editedMark; int recentStickersCount; @@ -74,12 +78,13 @@ namespace AyuSettings int showPeerId; bool showMessageSeconds; bool stickerConfirmation; - bool GIFConfirmation; + bool gifConfirmation; bool voiceConfirmation; - bool copyUsernameAsLink; public: - void set_sendReadPackets(bool val); + void set_sendReadMessages(bool val); + + void set_sendReadStories(bool val); void set_sendOnlinePackets(bool val); @@ -87,6 +92,8 @@ namespace AyuSettings void set_sendOfflinePacketAfterOnline(bool val); + void set_ghostModeEnabled(bool val); + void set_markReadAfterSend(bool val); void set_useScheduledMessages(bool val); @@ -111,7 +118,7 @@ namespace AyuSettings void set_stickerConfirmation(bool val); - void set_GIFConfirmation(bool val); + void set_gifConfirmation(bool val); void set_voiceConfirmation(bool val); @@ -120,7 +127,8 @@ namespace AyuSettings NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE( AyuGramSettings, - sendReadPackets, + sendReadMessages, + sendReadStories, sendOnlinePackets, sendUploadProgress, sendOfflinePacketAfterOnline, @@ -136,7 +144,7 @@ namespace AyuSettings showPeerId, showMessageSeconds, stickerConfirmation, - GIFConfirmation, + gifConfirmation, voiceConfirmation, copyUsernameAsLink ); diff --git a/Telegram/SourceFiles/ayu/ayu_state.cpp b/Telegram/SourceFiles/ayu/ayu_state.cpp index 2822755cd..09105ac1b 100644 --- a/Telegram/SourceFiles/ayu/ayu_state.cpp +++ b/Telegram/SourceFiles/ayu/ayu_state.cpp @@ -18,6 +18,6 @@ namespace AyuState bool getAllowSendPacket() { auto settings = &AyuSettings::getInstance(); - return settings->sendReadPackets || processVariable(allowSendReadPacket); + return settings->sendReadMessages || processVariable(allowSendReadPacket); } } diff --git a/Telegram/SourceFiles/ayu/ui/boxes/confirmation_box.cpp b/Telegram/SourceFiles/ayu/ui/boxes/confirmation_box.cpp index bbd64b1d2..6343e7d50 100644 --- a/Telegram/SourceFiles/ayu/ui/boxes/confirmation_box.cpp +++ b/Telegram/SourceFiles/ayu/ui/boxes/confirmation_box.cpp @@ -53,12 +53,12 @@ namespace AyuUi void ConfirmationBox::ReadAllPeers() { auto settings = &AyuSettings::getInstance(); - auto prev = settings->sendReadPackets; - settings->set_sendReadPackets(true); + auto prev = settings->sendReadMessages; + settings->set_sendReadMessages(true); auto chats = _controller->session().data().chatsList(); Window::MarkAsReadChatListHack(chats); - settings->set_sendReadPackets(prev); + settings->set_sendReadMessages(prev); } } diff --git a/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp b/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp index b33b6da5c..9d0f50923 100644 --- a/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp +++ b/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp @@ -56,49 +56,65 @@ namespace Settings AddButton( container, - tr::ayu_SendReadPackets(), + tr::ayu_DontReadMessages(), st::settingsButtonNoIcon )->toggleOn( - rpl::single(settings->sendReadPackets) + rpl::single(!settings->sendReadMessages) )->toggledValue( ) | rpl::filter([=](bool enabled) { - return (enabled != settings->sendReadPackets); + return (enabled == settings->sendReadMessages); }) | start_with_next([=](bool enabled) { - settings->set_sendReadPackets(enabled); + settings->set_sendReadMessages(!enabled); AyuSettings::save(); }, container->lifetime()); AddButton( container, - tr::ayu_SendOnlinePackets(), + tr::ayu_DontReadStories(), st::settingsButtonNoIcon )->toggleOn( - rpl::single(settings->sendOnlinePackets) + rpl::single(!settings->sendReadStories) )->toggledValue( ) | rpl::filter([=](bool enabled) { - return (enabled != settings->sendOnlinePackets); + return (enabled == settings->sendReadStories); }) | start_with_next([=](bool enabled) { - settings->set_sendOnlinePackets(enabled); + settings->set_sendReadStories(!enabled); AyuSettings::save(); }, container->lifetime()); AddButton( container, - tr::ayu_SendUploadProgress(), + tr::ayu_DontSendOnlinePackets(), st::settingsButtonNoIcon )->toggleOn( - rpl::single(settings->sendUploadProgress) + rpl::single(!settings->sendOnlinePackets) )->toggledValue( ) | rpl::filter([=](bool enabled) { - return (enabled != settings->sendUploadProgress); + return (enabled == settings->sendOnlinePackets); }) | start_with_next([=](bool enabled) { - settings->set_sendUploadProgress(enabled); + settings->set_sendOnlinePackets(!enabled); + AyuSettings::save(); + }, container->lifetime()); + + AddButton( + container, + tr::ayu_DontSendUploadProgress(), + st::settingsButtonNoIcon + )->toggleOn( + rpl::single(!settings->sendUploadProgress) + )->toggledValue( + ) | rpl::filter([=](bool enabled) + { + return (enabled == settings->sendUploadProgress); + }) | start_with_next([=](bool enabled) + { + settings->set_sendUploadProgress(!enabled); AyuSettings::save(); }, container->lifetime()); @@ -198,23 +214,23 @@ namespace Settings AddButton( container, - tr::ayu_EnableAds(), + tr::ayu_DisableAds(), st::settingsButtonNoIcon )->toggleOn( - rpl::single(settings->enableAds) + rpl::single(!settings->enableAds) )->toggledValue( ) | rpl::filter([=](bool enabled) { - return (enabled != settings->enableAds); + return (enabled == settings->enableAds); }) | start_with_next([=](bool enabled) { - settings->set_enableAds(enabled); + settings->set_enableAds(!enabled); AyuSettings::save(); }, container->lifetime()); - + AddButton( container, - rpl::single(QString("Copy username as link")), + tr::ayu_CopyUsernameAsLink(), st::settingsButtonNoIcon )->toggleOn( rpl::single(settings->copyUsernameAsLink) @@ -403,7 +419,7 @@ namespace Settings { auto settings = &AyuSettings::getInstance(); - AddSubsectionTitle(container, tr::ayu_BetaFeatures()); + AddSubsectionTitle(container, tr::ayu_ConfirmationsTitle()); AddButton( container, @@ -426,14 +442,14 @@ namespace Settings tr::ayu_GIFConfirmation(), st::settingsButtonNoIcon )->toggleOn( - rpl::single(settings->GIFConfirmation) + rpl::single(settings->gifConfirmation) )->toggledValue( ) | rpl::filter([=](bool enabled) { - return (enabled != settings->GIFConfirmation); + return (enabled != settings->gifConfirmation); }) | start_with_next([=](bool enabled) { - settings->set_GIFConfirmation(enabled); + settings->set_gifConfirmation(enabled); AyuSettings::save(); }, container->lifetime()); @@ -482,7 +498,7 @@ namespace Settings AddSkip(container); SetupSendConfirmations(container); - + AddDividerText(container, tr::ayu_SettingsWatermark()); } diff --git a/Telegram/SourceFiles/chat_helpers/gifs_list_widget.cpp b/Telegram/SourceFiles/chat_helpers/gifs_list_widget.cpp index 3fc379aa3..a5765a031 100644 --- a/Telegram/SourceFiles/chat_helpers/gifs_list_widget.cpp +++ b/Telegram/SourceFiles/chat_helpers/gifs_list_widget.cpp @@ -499,7 +499,7 @@ void GifsListWidget::selectInlineResult( }); }; - if (settings->GIFConfirmation) + if (settings->gifConfirmation) { Ui::show(Ui::MakeConfirmBox({ .text = rpl::single(QString("Do you want to send this GIF?")), diff --git a/Telegram/SourceFiles/data/data_histories.cpp b/Telegram/SourceFiles/data/data_histories.cpp index a0b35b974..5b594afb0 100644 --- a/Telegram/SourceFiles/data/data_histories.cpp +++ b/Telegram/SourceFiles/data/data_histories.cpp @@ -204,9 +204,9 @@ void Histories::readInboxTill( AyuSync::getInstance().syncRead(history, tillId); - // AyuGram sendReadPackets + // AyuGram sendReadMessages const auto settings = &AyuSettings::getInstance(); - auto allow = settings->sendReadPackets; + auto allow = settings->sendReadMessages; auto reallyAllow = AyuState::getAllowSendPacket(); // will return true if `allow` if (!reallyAllow) { diff --git a/Telegram/SourceFiles/data/data_stories.cpp b/Telegram/SourceFiles/data/data_stories.cpp index 085958ea2..5e01219cf 100644 --- a/Telegram/SourceFiles/data/data_stories.cpp +++ b/Telegram/SourceFiles/data/data_stories.cpp @@ -24,6 +24,10 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "ui/layers/show.h" #include "ui/text/text_utilities.h" +// AyuGram includes +#include "ayu/ayu_settings.h" + + namespace Data { namespace { @@ -1127,11 +1131,21 @@ void Stories::sendMarkAsReadRequest( checkQuitPreventFinished(); }; - const auto api = &_owner->session().api(); - api->request(MTPstories_ReadStories( - peer->asUser()->inputUser, - MTP_int(tillId) - )).done(finish).fail(finish).send(); + // AyuGram sendReadStories + const auto settings = &AyuSettings::getInstance(); + + if (settings->sendReadStories) + { + const auto api = &_owner->session().api(); + api->request(MTPstories_ReadStories( + peer->asUser()->inputUser, + MTP_int(tillId) + )).done(finish).fail(finish).send(); + } + else + { + finish(); + } } void Stories::checkQuitPreventFinished() { diff --git a/Telegram/SourceFiles/history/history_widget.cpp b/Telegram/SourceFiles/history/history_widget.cpp index dab734fa3..b20639590 100644 --- a/Telegram/SourceFiles/history/history_widget.cpp +++ b/Telegram/SourceFiles/history/history_widget.cpp @@ -3892,7 +3892,7 @@ void HistoryWidget::send(Api::SendOptions options) { options.scheduled = current + 12; } - if (!settings->sendReadPackets && settings->markReadAfterSend) + if (!settings->sendReadMessages && settings->markReadAfterSend) { AyuState::setAllowSendReadPacket(true); _history->session().data().histories().readInboxOnNewMessage(_history->lastMessage()); diff --git a/Telegram/SourceFiles/history/view/history_view_element.cpp b/Telegram/SourceFiles/history/view/history_view_element.cpp index 348ac64a9..4bcea062b 100644 --- a/Telegram/SourceFiles/history/view/history_view_element.cpp +++ b/Telegram/SourceFiles/history/view/history_view_element.cpp @@ -277,6 +277,9 @@ QString DateTooltipText(not_null view) { + tr::lng_signed_author(tr::now, lt_user, msgsigned->author); } } + dateText += '\n'; + dateText += "ID: "; + dateText += QString::number(item->id.bare); return dateText; } diff --git a/Telegram/SourceFiles/tray.cpp b/Telegram/SourceFiles/tray.cpp index 10f7ce375..681cc8898 100644 --- a/Telegram/SourceFiles/tray.cpp +++ b/Telegram/SourceFiles/tray.cpp @@ -103,13 +103,9 @@ void Tray::rebuildMenu() { _tray.addAction(std::move(turnGhostModeText), [=] { auto settings = &AyuSettings::getInstance(); - bool ghostMode = !AyuSettings::get_ghostModeEnabled(); + bool ghostMode = AyuSettings::get_ghostModeEnabled(); - settings->set_sendReadPackets(!ghostMode); - settings->set_sendOnlinePackets(!ghostMode); - settings->set_sendUploadProgress(!ghostMode); - - settings->set_sendOfflinePacketAfterOnline(ghostMode); + settings->set_ghostModeEnabled(!ghostMode); AyuSettings::save(); }); diff --git a/Telegram/SourceFiles/window/window_main_menu.cpp b/Telegram/SourceFiles/window/window_main_menu.cpp index 0a09ed21d..79f923590 100644 --- a/Telegram/SourceFiles/window/window_main_menu.cpp +++ b/Telegram/SourceFiles/window/window_main_menu.cpp @@ -801,21 +801,21 @@ void MainMenu::setupMenu() { controller->showPeerHistory(controller->session().user()); }); addAction( - rpl::single(QString("LRead Messages")), + tr::ayu_LReadMessages(), { &st::menuIconMarkRead } )->setClickedCallback([=] { auto settings = &AyuSettings::getInstance(); - auto prev = settings->sendReadPackets; - settings->set_sendReadPackets(false); + auto prev = settings->sendReadMessages; + settings->set_sendReadMessages(false); auto chats = controller->session().data().chatsList(); MarkAsReadChatListHack(chats); - settings->set_sendReadPackets(prev); + settings->set_sendReadMessages(prev); }); addAction( - rpl::single(QString("SRead Messages")), + tr::ayu_SReadMessages(), { &st::menuIconMarkRead } )->setClickedCallback([=] { @@ -887,18 +887,14 @@ void MainMenu::setupMenu() { if (settings->showGhostToggleInDrawer) { _ghostModeToggle = addAction( - tr::ayu_DrawerGhostModeToggle(), + tr::ayu_GhostModeToggle(), { &st::menuIconSilent } // todo: fix `ayuGhostIcon` )->toggleOn(AyuSettings::get_ghostModeEnabledReactive()); _ghostModeToggle->toggledChanges( ) | rpl::start_with_next([=](bool ghostMode) { - settings->set_sendReadPackets(!ghostMode); - settings->set_sendOnlinePackets(!ghostMode); - settings->set_sendUploadProgress(!ghostMode); - - settings->set_sendOfflinePacketAfterOnline(ghostMode); + settings->set_ghostModeEnabled(ghostMode); AyuSettings::save(); }, _ghostModeToggle->lifetime()); diff --git a/Telegram/lib_ui b/Telegram/lib_ui index 9f91b83c4..dbc081664 160000 --- a/Telegram/lib_ui +++ b/Telegram/lib_ui @@ -1 +1 @@ -Subproject commit 9f91b83c4c85b476a83f5da5e2b7986c68f410cf +Subproject commit dbc0816644ba1caa533e69fb1cbf6ba5566f1150