From 74abaccab3cdc2075e751b20601f2887450183d6 Mon Sep 17 00:00:00 2001 From: ZavaruKitsu Date: Tue, 2 Jan 2024 03:48:01 +0300 Subject: [PATCH] feat: rework `disableStories` --- Telegram/SourceFiles/data/data_stories.cpp | 27 ------------------- Telegram/SourceFiles/dialogs/dialogs_row.cpp | 8 +++++- .../SourceFiles/dialogs/dialogs_widget.cpp | 11 +++++++- 3 files changed, 17 insertions(+), 29 deletions(-) diff --git a/Telegram/SourceFiles/data/data_stories.cpp b/Telegram/SourceFiles/data/data_stories.cpp index 3e8ab6ac5..5d9326465 100644 --- a/Telegram/SourceFiles/data/data_stories.cpp +++ b/Telegram/SourceFiles/data/data_stories.cpp @@ -152,13 +152,6 @@ Main::Session &Stories::session() const { } void Stories::apply(const MTPDupdateStory &data) { - // AyuGram disableStories - const auto settings = &AyuSettings::getInstance(); - if (settings->disableStories) - { - return; - } - const auto peerId = peerFromMTP(data.vpeer()); const auto peer = _owner->peer(peerId); const auto now = base::unixtime::now(); @@ -208,13 +201,6 @@ void Stories::apply(const MTPDupdateStory &data) { } void Stories::apply(const MTPDupdateReadStories &data) { - // AyuGram disableStories - const auto settings = &AyuSettings::getInstance(); - if (settings->disableStories) - { - return; - } - bumpReadTill(peerFromMTP(data.vpeer()), data.vmax_id().v); } @@ -227,13 +213,6 @@ void Stories::apply(const MTPStoriesStealthMode &stealthMode) { } void Stories::apply(not_null peer, const MTPPeerStories *data) { - // AyuGram disableStories - const auto settings = &AyuSettings::getInstance(); - if (settings->disableStories) - { - return; - } - if (!data) { applyDeletedFromSources(peer->id, StorySourcesList::NotHidden); applyDeletedFromSources(peer->id, StorySourcesList::Hidden); @@ -246,12 +225,6 @@ void Stories::apply(not_null peer, const MTPPeerStories *data) { } Story *Stories::applySingle(PeerId peerId, const MTPstoryItem &story) { - // AyuGram disableStories - const auto settings = &AyuSettings::getInstance(); - if (settings->disableStories) - { - return nullptr; - } const auto idDates = parseAndApply( _owner->peer(peerId), story, diff --git a/Telegram/SourceFiles/dialogs/dialogs_row.cpp b/Telegram/SourceFiles/dialogs/dialogs_row.cpp index 54247193c..cb35b3c51 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_row.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_row.cpp @@ -31,6 +31,10 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "base/unixtime.h" #include "styles/style_dialogs.h" +// AyuGram includes +#include "ayu/ayu_settings.h" + + namespace Dialogs { namespace { @@ -444,10 +448,12 @@ void Row::paintUserpic( updateCornerBadgeShown(peer); } + const auto settings = &AyuSettings::getInstance(); + const auto cornerBadgeShown = !_cornerBadgeUserpic ? _cornerBadgeShown : !_cornerBadgeUserpic->layersManager.isDisplayedNone(); - const auto storiesPeer = peer + const auto storiesPeer = settings->disableStories ? nullptr : peer ? ((peer->isUser() || peer->isBroadcast()) ? peer : nullptr) : nullptr; const auto storiesFolder = peer ? nullptr : _id.folder(); diff --git a/Telegram/SourceFiles/dialogs/dialogs_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_widget.cpp index 30c7ddd88..4dc510f95 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_widget.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_widget.cpp @@ -558,11 +558,13 @@ void Widget::chosenRow(const ChosenRow &row) { } return; } else if (history) { + const auto settings = &AyuSettings::getInstance(); const auto peer = history->peer; if (row.message.fullId.msg == ShowAtUnreadMsgId) { if (row.userpicClick && peer->hasActiveStories() - && !peer->isSelf()) { + && !peer->isSelf() + && !settings->disableStories) { controller()->openPeerStories(peer->id); return; } @@ -1519,6 +1521,13 @@ void Widget::updateStoriesVisibility() { if (!_stories) { return; } + + const auto settings = &AyuSettings::getInstance(); + if (settings->disableStories) { + _stories->setVisible(false); + return; + } + const auto hidden = (_showAnimation != nullptr) || _openedForum || !_widthAnimationCache.isNull()