diff --git a/Telegram/SourceFiles/history/view/history_view_subsection_tabs.cpp b/Telegram/SourceFiles/history/view/history_view_subsection_tabs.cpp index 023ef34b64..8f6568c438 100644 --- a/Telegram/SourceFiles/history/view/history_view_subsection_tabs.cpp +++ b/Telegram/SourceFiles/history/view/history_view_subsection_tabs.cpp @@ -456,13 +456,20 @@ void SubsectionTabs::startFillingSlider( } else if (item.thread->peer()->isBot()) { sections.push_back({ .text = { tr::lng_bot_new_chat(tr::now) }, - .userpic = Ui::MakeNewChatSubsectionsThumbnail(textFg), }); + if (vertical) { + auto &last = sections.back(); + last.userpic = Ui::MakeNewChatSubsectionsThumbnail( + textFg); + } } else { sections.push_back({ .text = { tr::lng_filters_all_short(tr::now) }, - .userpic = Ui::MakeAllSubsectionsThumbnail(textFg), }); + if (vertical) { + auto &last = sections.back(); + last.userpic = Ui::MakeAllSubsectionsThumbnail(textFg); + } } auto §ion = sections.back(); section.badges = item.badges; diff --git a/Telegram/SourceFiles/ui/controls/subsection_tabs_slider.cpp b/Telegram/SourceFiles/ui/controls/subsection_tabs_slider.cpp index 732c06878d..fa95ada28e 100644 --- a/Telegram/SourceFiles/ui/controls/subsection_tabs_slider.cpp +++ b/Telegram/SourceFiles/ui/controls/subsection_tabs_slider.cpp @@ -127,6 +127,7 @@ VerticalButton::VerticalButton( void VerticalButton::dataUpdatedHook() { _text.setMarkedText(_st.nameStyle, _data.text, kDefaultTextOptions); + _subscribed = false; updateSize(); } @@ -477,6 +478,8 @@ SubsectionButton::SubsectionButton( SubsectionButton::~SubsectionButton() = default; void SubsectionButton::setData(SubsectionTab &&data) { + Expects(_data.userpic.get() == data.userpic.get()); + _data = std::move(data); dataUpdatedHook(); update(); diff --git a/Telegram/SourceFiles/ui/dynamic_thumbnails.cpp b/Telegram/SourceFiles/ui/dynamic_thumbnails.cpp index 4daaf99d59..cfeac4aefa 100644 --- a/Telegram/SourceFiles/ui/dynamic_thumbnails.cpp +++ b/Telegram/SourceFiles/ui/dynamic_thumbnails.cpp @@ -632,6 +632,8 @@ void EmojiThumbnail::subscribeToUpdates(Fn callback) { _data, std::move(callback), Data::CustomEmojiSizeTag::Large); + + Ensures(_emoji != nullptr); } std::shared_ptr EmojiThumbnail::clone() {