From 36924da59afd2f3aa83d32b3de197ce6b5dd6a7b Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Sat, 2 Nov 2024 16:49:52 +0300 Subject: [PATCH] Replaced inner slider in chats filters strip. --- .../ui/widgets/chat_filters_tabs_strip.cpp | 28 ++----------------- 1 file changed, 3 insertions(+), 25 deletions(-) diff --git a/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.cpp b/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.cpp index a89e9405a..ec3ca0bf7 100644 --- a/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.cpp +++ b/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.cpp @@ -11,7 +11,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "data/data_session.h" #include "lang/lang_keys.h" #include "main/main_session.h" -#include "ui/widgets/discrete_sliders.h" +#include "ui/widgets/chat_filters_tabs_slider.h" #include "ui/widgets/scroll_area.h" #include "ui/wrap/slide_wrap.h" #include "styles/style_dialogs.h" // dialogsSearchTabs @@ -26,28 +26,6 @@ not_null AddChatFiltersTabsStrip( rpl::producer multiSelectHeightValue, Fn setAddedTopScrollSkip, Fn choose) { - class Slider final : public Ui::SettingsSlider { - public: - using Ui::SettingsSlider::SettingsSlider; - - [[nodiscard]] int centerOfSection(int section) const { - const auto widths = Ui::SettingsSlider::countSectionsWidths(0); - auto result = 0; - if (section >= 0 && section < widths.size()) { - for (auto i = 0; i < section; i++) { - result += widths[i]; - } - result += widths[section] / 2; - } - return result; - } - - void fitWidthToSections() { - const auto widths = Ui::SettingsSlider::countSectionsWidths(0); - resizeToWidth(ranges::accumulate(widths, .0)); - } - }; - struct State final { Ui::Animations::Simple animation; std::optional lastFilterId = std::nullopt; @@ -61,9 +39,9 @@ not_null AddChatFiltersTabsStrip( const auto scroll = Ui::CreateChild(container, scrollSt); const auto sliderPadding = st::dialogsSearchTabsPadding; const auto slider = scroll->setOwnedWidget( - object_ptr>( + object_ptr>( parent, - object_ptr(parent, st::dialogsSearchTabs), + object_ptr(parent, st::dialogsSearchTabs), QMargins(sliderPadding, 0, sliderPadding, 0)))->entity(); const auto state = wrap->lifetime().make_state(); wrap->toggle(false, anim::type::instant);