From a8161b6a7c76fe15b109f3d16adc3e75e8578ee8 Mon Sep 17 00:00:00 2001 From: Neurotoxin001 <39812401+Neurotoxin001@users.noreply.github.com> Date: Wed, 25 Jun 2025 00:00:30 +0300 Subject: [PATCH 1/2] Option to remove delay on tooltip --- Telegram/Resources/langs/lang.strings | 1 + Telegram/SourceFiles/ayu/ayu_settings.cpp | 5 +++++ Telegram/SourceFiles/ayu/ayu_settings.h | 3 +++ .../SourceFiles/ayu/ui/settings/settings_ayu.cpp | 12 ++++++++++++ .../SourceFiles/history/history_inner_widget.cpp | 4 +++- .../history/view/history_view_list_widget.cpp | 4 +++- 6 files changed, 27 insertions(+), 2 deletions(-) diff --git a/Telegram/Resources/langs/lang.strings b/Telegram/Resources/langs/lang.strings index 779778df3e..ec196c5def 100644 --- a/Telegram/Resources/langs/lang.strings +++ b/Telegram/Resources/langs/lang.strings @@ -6644,6 +6644,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL "ayu_DisableStories" = "Disable Stories"; "ayu_DisableCustomBackgrounds" = "Disable Custom Backgrounds"; "ayu_DisableNotificationsDelay" = "Disable Notify Delay"; +"ayu_DisableTooltipDelay" = "Disable Tooltip Delay"; "ayu_LocalPremium" = "Local Telegram Premium"; "ayu_DisplayGhostStatus" = "Display Ghost Mode Status"; "ayu_CopyUsernameAsLink" = "Copy Username as Link"; diff --git a/Telegram/SourceFiles/ayu/ayu_settings.cpp b/Telegram/SourceFiles/ayu/ayu_settings.cpp index e3ea5e76ec..10574103a0 100644 --- a/Telegram/SourceFiles/ayu/ayu_settings.cpp +++ b/Telegram/SourceFiles/ayu/ayu_settings.cpp @@ -230,6 +230,7 @@ AyuGramSettings::AyuGramSettings() { increaseWebviewWidth = false; disableNotificationsDelay = false; + disableTooltipDelay = false; localPremium = false; // ~ Customization @@ -413,6 +414,10 @@ void set_disableNotificationsDelay(bool val) { settings->disableNotificationsDelay = val; } +void set_disableTooltipDelay(bool val) { + settings->disableTooltipDelay = val; +} + void set_localPremium(bool val) { settings->localPremium = val; } diff --git a/Telegram/SourceFiles/ayu/ayu_settings.h b/Telegram/SourceFiles/ayu/ayu_settings.h index 6bbf81c7c7..9cff04cde8 100644 --- a/Telegram/SourceFiles/ayu/ayu_settings.h +++ b/Telegram/SourceFiles/ayu/ayu_settings.h @@ -48,6 +48,7 @@ public: bool increaseWebviewWidth; bool disableNotificationsDelay; + bool disableTooltipDelay; bool localPremium; QString appIcon; @@ -130,6 +131,7 @@ void set_increaseWebviewHeight(bool val); void set_increaseWebviewWidth(bool val); void set_disableNotificationsDelay(bool val); +void set_disableTooltipDelay(bool val); void set_localPremium(bool val); void set_appIcon(QString val); @@ -203,6 +205,7 @@ NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT( increaseWebviewHeight, increaseWebviewWidth, disableNotificationsDelay, + disableTooltipDelay, localPremium, appIcon, simpleQuotesAndReplies, diff --git a/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp b/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp index 9ace785559..5f335e8b12 100644 --- a/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp +++ b/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp @@ -809,6 +809,18 @@ void SetupQoLToggles(not_null container) { }, container->lifetime()); + AddButtonWithIcon(container, tr::ayu_DisableTooltipDelay(), st::settingsButtonNoIcon) + ->toggleOn(rpl::single(settings.disableTooltipDelay)) + ->toggledValue() | + rpl::filter([=](bool enabled) { return (enabled != settings.disableTooltipDelay); }) | + start_with_next( + [=](bool enabled) + { + AyuSettings::set_disableTooltipDelay(enabled); + AyuSettings::save(); + }, + container->lifetime()); + AddButtonWithIcon( container, tr::ayu_ShowOnlyAddedEmojisAndStickers(), diff --git a/Telegram/SourceFiles/history/history_inner_widget.cpp b/Telegram/SourceFiles/history/history_inner_widget.cpp index c6d4474a41..64d17092ab 100644 --- a/Telegram/SourceFiles/history/history_inner_widget.cpp +++ b/Telegram/SourceFiles/history/history_inner_widget.cpp @@ -22,6 +22,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "history/view/reactions/history_view_reactions_selector.h" #include "history/view/history_view_about_view.h" #include "history/view/history_view_message.h" +#include "ayu/ayu_settings.h" #include "history/view/history_view_service_message.h" #include "history/view/history_view_cursor_state.h" #include "history/view/history_view_context_menu.h" @@ -4208,7 +4209,8 @@ void HistoryInner::mouseActionUpdate() { || dragState.cursor == CursorState::Date || dragState.cursor == CursorState::Forwarded || dragState.customTooltip) { - Ui::Tooltip::Show(350, this); + const auto delay = AyuSettings::getInstance().disableTooltipDelay ? 0 : crl::time(350); + Ui::Tooltip::Show(delay, this); } Qt::CursorShape cur = style::cur_default; diff --git a/Telegram/SourceFiles/history/view/history_view_list_widget.cpp b/Telegram/SourceFiles/history/view/history_view_list_widget.cpp index db2d5f8161..5fd1fc1d28 100644 --- a/Telegram/SourceFiles/history/view/history_view_list_widget.cpp +++ b/Telegram/SourceFiles/history/view/history_view_list_widget.cpp @@ -21,6 +21,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "history/view/reactions/history_view_reactions_selector.h" #include "history/view/history_view_context_menu.h" #include "history/view/history_view_element.h" +#include "ayu/ayu_settings.h" #include "history/view/history_view_emoji_interactions.h" #include "history/view/history_view_message.h" #include "history/view/history_view_service_message.h" @@ -3829,7 +3830,8 @@ void ListWidget::mouseActionUpdate() { if (dragState.link || dragState.cursor == CursorState::Date || dragState.cursor == CursorState::Forwarded) { - Ui::Tooltip::Show(350, this); + const auto delay = AyuSettings::getInstance().disableTooltipDelay ? 0 : crl::time(350); + Ui::Tooltip::Show(delay, this); } if (_mouseAction == MouseAction::None) { From 63f070b454b742c35ac607e2cdc4579922215c7e Mon Sep 17 00:00:00 2001 From: Neurotoxin001 <39812401+Neurotoxin001@users.noreply.github.com> Date: Thu, 10 Jul 2025 16:29:20 +0300 Subject: [PATCH 2/2] Update settings_ayu.cpp fix build --- Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp b/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp index 5d55e0a442..b074aa6c99 100644 --- a/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp +++ b/Telegram/SourceFiles/ayu/ui/settings/settings_ayu.cpp @@ -809,9 +809,9 @@ void SetupQoLToggles(not_null container) { container->lifetime()); AddButtonWithIcon(container, tr::ayu_DisableTooltipDelay(), st::settingsButtonNoIcon) - ->toggleOn(rpl::single(settings.disableTooltipDelay)) + ->toggleOn(rpl::single(settings->disableTooltipDelay)) ->toggledValue() | - rpl::filter([=](bool enabled) { return (enabled != settings.disableTooltipDelay); }) | + rpl::filter([=](bool enabled) { return (enabled != settings->disableTooltipDelay); }) | start_with_next( [=](bool enabled) {