mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-04-15 13:47:05 +02:00
Moved out value notification settings for filters to separated file.
This commit is contained in:
parent
b11b5caeb3
commit
b83d943841
3 changed files with 19 additions and 13 deletions
|
@ -7,10 +7,13 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
|||
*/
|
||||
#include "data/data_unread_value.h"
|
||||
|
||||
#include "core/application.h"
|
||||
#include "core/core_settings.h"
|
||||
#include "data/data_chat_filters.h"
|
||||
#include "data/data_folder.h"
|
||||
#include "data/data_session.h"
|
||||
#include "main/main_session.h"
|
||||
#include "window/notifications_manager.h"
|
||||
|
||||
namespace Data {
|
||||
namespace {
|
||||
|
@ -50,4 +53,16 @@ rpl::producer<Dialogs::UnreadState> UnreadStateValue(
|
|||
});
|
||||
}
|
||||
|
||||
rpl::producer<bool> IncludeMutedCounterFoldersValue() {
|
||||
using namespace Window::Notifications;
|
||||
return rpl::single(rpl::empty_value()) | rpl::then(
|
||||
Core::App().notifications().settingsChanged(
|
||||
) | rpl::filter(
|
||||
rpl::mappers::_1 == ChangeType::IncludeMuted
|
||||
) | rpl::to_empty
|
||||
) | rpl::map([] {
|
||||
return Core::App().settings().includeMutedCounterFolders();
|
||||
});
|
||||
}
|
||||
|
||||
} // namespace Data
|
||||
|
|
|
@ -25,4 +25,6 @@ namespace Data {
|
|||
not_null<Main::Session*> session,
|
||||
FilterId filterId);
|
||||
|
||||
[[nodiscard]] rpl::producer<bool> IncludeMutedCounterFoldersValue();
|
||||
|
||||
} // namespace Data
|
||||
|
|
|
@ -13,12 +13,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
|||
#include "window/window_main_menu.h"
|
||||
#include "window/window_peer_menu.h"
|
||||
#include "main/main_session.h"
|
||||
#include "core/application.h"
|
||||
#include "core/core_settings.h"
|
||||
#include "window/notifications_manager.h"
|
||||
#include "data/data_session.h"
|
||||
#include "data/data_chat_filters.h"
|
||||
#include "data/data_folder.h"
|
||||
#include "data/data_user.h"
|
||||
#include "data/data_peer_values.h"
|
||||
#include "data/data_premium_limits.h"
|
||||
|
@ -53,14 +49,7 @@ FiltersMenu::FiltersMenu(
|
|||
, _scroll(&_outer)
|
||||
, _container(
|
||||
_scroll.setOwnedWidget(
|
||||
object_ptr<Ui::VerticalLayout>(&_scroll)))
|
||||
, _includeMuted(Core::App().settings().includeMutedCounterFolders()) {
|
||||
Core::App().notifications().settingsChanged(
|
||||
) | rpl::filter(
|
||||
rpl::mappers::_1 == Window::Notifications::ChangeType::IncludeMuted
|
||||
) | rpl::start_with_next([=] {
|
||||
_includeMuted = Core::App().settings().includeMutedCounterFolders();
|
||||
}, _outer.lifetime());
|
||||
object_ptr<Ui::VerticalLayout>(&_scroll))) {
|
||||
|
||||
_drag.timer.setCallback([=] {
|
||||
if (_drag.filterId >= 0) {
|
||||
|
@ -276,7 +265,7 @@ base::unique_qptr<Ui::SideBarButton> FiltersMenu::prepareButton(
|
|||
if (id >= 0) {
|
||||
rpl::combine(
|
||||
Data::UnreadStateValue(&_session->session(), id),
|
||||
_includeMuted.value()
|
||||
Data::IncludeMutedCounterFoldersValue()
|
||||
) | rpl::start_with_next([=](
|
||||
const Dialogs::UnreadState &state,
|
||||
bool includeMuted) {
|
||||
|
|
Loading…
Add table
Reference in a new issue