Option to show only unmuted counter on folders
This commit is contained in:
parent
d66325b45c
commit
20355dd456
4 changed files with 24 additions and 7 deletions
|
|
@ -337,6 +337,10 @@ bool Manager::readCustomFile() {
|
||||||
ReadIntOption(settings, "default_folder_id", [&](auto v) {
|
ReadIntOption(settings, "default_folder_id", [&](auto v) {
|
||||||
cSetDefaultFilterId(v);
|
cSetDefaultFilterId(v);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
ReadBoolOption(settings, "folder_counter_unmuted_only", [&](auto v) {
|
||||||
|
cSetUnmutedFilterCounterOnly(v);
|
||||||
|
});
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -382,6 +386,7 @@ void Manager::writeDefaultFile() {
|
||||||
settings.insert(qsl("always_show_top_userpic"), cShowTopBarUserpic());
|
settings.insert(qsl("always_show_top_userpic"), cShowTopBarUserpic());
|
||||||
settings.insert(qsl("custom_app_icon"), cCustomAppIcon());
|
settings.insert(qsl("custom_app_icon"), cCustomAppIcon());
|
||||||
settings.insert(qsl("default_folder_id"), cDefaultFilterId());
|
settings.insert(qsl("default_folder_id"), cDefaultFilterId());
|
||||||
|
settings.insert(qsl("folder_counter_unmuted_only"), cUnmutedFilterCounterOnly());
|
||||||
|
|
||||||
auto settingsScales = QJsonArray();
|
auto settingsScales = QJsonArray();
|
||||||
settings.insert(qsl("scales"), settingsScales);
|
settings.insert(qsl("scales"), settingsScales);
|
||||||
|
|
@ -448,6 +453,7 @@ void Manager::writeCurrentSettings() {
|
||||||
settings.insert(qsl("always_show_top_userpic"), cShowTopBarUserpic());
|
settings.insert(qsl("always_show_top_userpic"), cShowTopBarUserpic());
|
||||||
settings.insert(qsl("custom_app_icon"), cCustomAppIcon());
|
settings.insert(qsl("custom_app_icon"), cCustomAppIcon());
|
||||||
settings.insert(qsl("default_folder_id"), cDefaultFilterId());
|
settings.insert(qsl("default_folder_id"), cDefaultFilterId());
|
||||||
|
settings.insert(qsl("folder_counter_unmuted_only"), cUnmutedFilterCounterOnly());
|
||||||
|
|
||||||
auto settingsScales = QJsonArray();
|
auto settingsScales = QJsonArray();
|
||||||
auto currentScales = cInterfaceScales();
|
auto currentScales = cInterfaceScales();
|
||||||
|
|
|
||||||
|
|
@ -321,4 +321,4 @@ bool gShowTopBarUserpic = false;
|
||||||
int gCustomAppIcon = 0;
|
int gCustomAppIcon = 0;
|
||||||
|
|
||||||
int gDefaultFilterId = 0;
|
int gDefaultFilterId = 0;
|
||||||
|
bool gUnmutedFilterCounterOnly = false;
|
||||||
|
|
|
||||||
|
|
@ -251,3 +251,4 @@ DeclareSetting(bool, ShowTopBarUserpic);
|
||||||
DeclareSetting(int, CustomAppIcon);
|
DeclareSetting(int, CustomAppIcon);
|
||||||
|
|
||||||
DeclareSetting(int, DefaultFilterId);
|
DeclareSetting(int, DefaultFilterId);
|
||||||
|
DeclareSetting(bool, UnmutedFilterCounterOnly);
|
||||||
|
|
|
||||||
|
|
@ -213,12 +213,22 @@ base::unique_qptr<Ui::SideBarButton> FiltersMenu::prepareButton(
|
||||||
) | rpl::start_with_next([=](const Dialogs::UnreadState &state) {
|
) | rpl::start_with_next([=](const Dialogs::UnreadState &state) {
|
||||||
const auto count = (state.chats + state.marks);
|
const auto count = (state.chats + state.marks);
|
||||||
const auto muted = (state.chatsMuted + state.marksMuted);
|
const auto muted = (state.chatsMuted + state.marksMuted);
|
||||||
const auto string = !count
|
if (cUnmutedFilterCounterOnly()) {
|
||||||
? QString()
|
const auto unmuted = count - muted;
|
||||||
: (count > 99)
|
const auto string = !unmuted
|
||||||
? "99+"
|
? QString()
|
||||||
: QString::number(count);
|
: (unmuted > 99)
|
||||||
raw->setBadge(string, count == muted);
|
? "99+"
|
||||||
|
: QString::number(unmuted);
|
||||||
|
raw->setBadge(string, false);
|
||||||
|
} else {
|
||||||
|
const auto string = !count
|
||||||
|
? QString()
|
||||||
|
: (count > 99)
|
||||||
|
? "99+"
|
||||||
|
: QString::number(count);
|
||||||
|
raw->setBadge(string, count == muted);
|
||||||
|
}
|
||||||
}, raw->lifetime());
|
}, raw->lifetime());
|
||||||
}
|
}
|
||||||
raw->setActive(_session->activeChatsFilterCurrent() == id);
|
raw->setActive(_session->activeChatsFilterCurrent() == id);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue