diff --git a/Telegram/CMakeLists.txt b/Telegram/CMakeLists.txt index ace72d47d0..128852143a 100644 --- a/Telegram/CMakeLists.txt +++ b/Telegram/CMakeLists.txt @@ -38,6 +38,7 @@ include(cmake/lib_tgvoip.cmake) set(style_files boxes/boxes.style calls/calls.style + chat_helpers/chat_helpers.style dialogs/dialogs.style export/view/export.style history/history.style @@ -49,7 +50,7 @@ set(style_files passport/passport.style profile/profile.style settings/settings.style - chat_helpers/chat_helpers.style + ui/filter_icons.style window/window.style ) @@ -921,6 +922,8 @@ PRIVATE ui/countryinput.h ui/empty_userpic.cpp ui/empty_userpic.h + ui/filter_icons.cpp + ui/filter_icons.h ui/grouped_layout.cpp ui/grouped_layout.h ui/resize_area.h diff --git a/Telegram/Resources/icons/filters_all.png b/Telegram/Resources/icons/filters/filters_all.png similarity index 100% rename from Telegram/Resources/icons/filters_all.png rename to Telegram/Resources/icons/filters/filters_all.png diff --git a/Telegram/Resources/icons/filters_all@2x.png b/Telegram/Resources/icons/filters/filters_all@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_all@2x.png rename to Telegram/Resources/icons/filters/filters_all@2x.png diff --git a/Telegram/Resources/icons/filters_all@3x.png b/Telegram/Resources/icons/filters/filters_all@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_all@3x.png rename to Telegram/Resources/icons/filters/filters_all@3x.png diff --git a/Telegram/Resources/icons/filters/filters_all_active.png b/Telegram/Resources/icons/filters/filters_all_active.png new file mode 100644 index 0000000000..c2a0fb691f Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_all_active.png differ diff --git a/Telegram/Resources/icons/filters/filters_all_active@2x.png b/Telegram/Resources/icons/filters/filters_all_active@2x.png new file mode 100644 index 0000000000..fa027ea7f3 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_all_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/filters_all_active@3x.png b/Telegram/Resources/icons/filters/filters_all_active@3x.png new file mode 100644 index 0000000000..99d77e8c12 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_all_active@3x.png differ diff --git a/Telegram/Resources/icons/filters_bots.png b/Telegram/Resources/icons/filters/filters_bots.png similarity index 100% rename from Telegram/Resources/icons/filters_bots.png rename to Telegram/Resources/icons/filters/filters_bots.png diff --git a/Telegram/Resources/icons/filters_bots@2x.png b/Telegram/Resources/icons/filters/filters_bots@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_bots@2x.png rename to Telegram/Resources/icons/filters/filters_bots@2x.png diff --git a/Telegram/Resources/icons/filters_bots@3x.png b/Telegram/Resources/icons/filters/filters_bots@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_bots@3x.png rename to Telegram/Resources/icons/filters/filters_bots@3x.png diff --git a/Telegram/Resources/icons/filters_bots_active.png b/Telegram/Resources/icons/filters/filters_bots_active.png similarity index 100% rename from Telegram/Resources/icons/filters_bots_active.png rename to Telegram/Resources/icons/filters/filters_bots_active.png diff --git a/Telegram/Resources/icons/filters_bots_active@2x.png b/Telegram/Resources/icons/filters/filters_bots_active@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_bots_active@2x.png rename to Telegram/Resources/icons/filters/filters_bots_active@2x.png diff --git a/Telegram/Resources/icons/filters_bots_active@3x.png b/Telegram/Resources/icons/filters/filters_bots_active@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_bots_active@3x.png rename to Telegram/Resources/icons/filters/filters_bots_active@3x.png diff --git a/Telegram/Resources/icons/filters/filters_channels.png b/Telegram/Resources/icons/filters/filters_channels.png new file mode 100644 index 0000000000..be77932b8b Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_channels.png differ diff --git a/Telegram/Resources/icons/filters/filters_channels@2x.png b/Telegram/Resources/icons/filters/filters_channels@2x.png new file mode 100644 index 0000000000..697e07daf1 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_channels@2x.png differ diff --git a/Telegram/Resources/icons/filters/filters_channels@3x.png b/Telegram/Resources/icons/filters/filters_channels@3x.png new file mode 100644 index 0000000000..3dc154a454 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_channels@3x.png differ diff --git a/Telegram/Resources/icons/filters/filters_channels_active.png b/Telegram/Resources/icons/filters/filters_channels_active.png new file mode 100644 index 0000000000..202ce03684 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_channels_active.png differ diff --git a/Telegram/Resources/icons/filters/filters_channels_active@2x.png b/Telegram/Resources/icons/filters/filters_channels_active@2x.png new file mode 100644 index 0000000000..64306644f2 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_channels_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/filters_channels_active@3x.png b/Telegram/Resources/icons/filters/filters_channels_active@3x.png new file mode 100644 index 0000000000..c5428670e3 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_channels_active@3x.png differ diff --git a/Telegram/Resources/icons/filters_custom.png b/Telegram/Resources/icons/filters/filters_custom.png similarity index 100% rename from Telegram/Resources/icons/filters_custom.png rename to Telegram/Resources/icons/filters/filters_custom.png diff --git a/Telegram/Resources/icons/filters_custom@2x.png b/Telegram/Resources/icons/filters/filters_custom@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_custom@2x.png rename to Telegram/Resources/icons/filters/filters_custom@2x.png diff --git a/Telegram/Resources/icons/filters_custom@3x.png b/Telegram/Resources/icons/filters/filters_custom@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_custom@3x.png rename to Telegram/Resources/icons/filters/filters_custom@3x.png diff --git a/Telegram/Resources/icons/filters_custom_active.png b/Telegram/Resources/icons/filters/filters_custom_active.png similarity index 100% rename from Telegram/Resources/icons/filters_custom_active.png rename to Telegram/Resources/icons/filters/filters_custom_active.png diff --git a/Telegram/Resources/icons/filters_custom_active@2x.png b/Telegram/Resources/icons/filters/filters_custom_active@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_custom_active@2x.png rename to Telegram/Resources/icons/filters/filters_custom_active@2x.png diff --git a/Telegram/Resources/icons/filters_custom_active@3x.png b/Telegram/Resources/icons/filters/filters_custom_active@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_custom_active@3x.png rename to Telegram/Resources/icons/filters/filters_custom_active@3x.png diff --git a/Telegram/Resources/icons/filters_groups.png b/Telegram/Resources/icons/filters/filters_groups.png similarity index 100% rename from Telegram/Resources/icons/filters_groups.png rename to Telegram/Resources/icons/filters/filters_groups.png diff --git a/Telegram/Resources/icons/filters_groups@2x.png b/Telegram/Resources/icons/filters/filters_groups@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_groups@2x.png rename to Telegram/Resources/icons/filters/filters_groups@2x.png diff --git a/Telegram/Resources/icons/filters_groups@3x.png b/Telegram/Resources/icons/filters/filters_groups@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_groups@3x.png rename to Telegram/Resources/icons/filters/filters_groups@3x.png diff --git a/Telegram/Resources/icons/filters_groups_active.png b/Telegram/Resources/icons/filters/filters_groups_active.png similarity index 100% rename from Telegram/Resources/icons/filters_groups_active.png rename to Telegram/Resources/icons/filters/filters_groups_active.png diff --git a/Telegram/Resources/icons/filters_groups_active@2x.png b/Telegram/Resources/icons/filters/filters_groups_active@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_groups_active@2x.png rename to Telegram/Resources/icons/filters/filters_groups_active@2x.png diff --git a/Telegram/Resources/icons/filters_groups_active@3x.png b/Telegram/Resources/icons/filters/filters_groups_active@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_groups_active@3x.png rename to Telegram/Resources/icons/filters/filters_groups_active@3x.png diff --git a/Telegram/Resources/icons/filters_private.png b/Telegram/Resources/icons/filters/filters_private.png similarity index 100% rename from Telegram/Resources/icons/filters_private.png rename to Telegram/Resources/icons/filters/filters_private.png diff --git a/Telegram/Resources/icons/filters_private@2x.png b/Telegram/Resources/icons/filters/filters_private@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_private@2x.png rename to Telegram/Resources/icons/filters/filters_private@2x.png diff --git a/Telegram/Resources/icons/filters_private@3x.png b/Telegram/Resources/icons/filters/filters_private@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_private@3x.png rename to Telegram/Resources/icons/filters/filters_private@3x.png diff --git a/Telegram/Resources/icons/filters_private_active.png b/Telegram/Resources/icons/filters/filters_private_active.png similarity index 100% rename from Telegram/Resources/icons/filters_private_active.png rename to Telegram/Resources/icons/filters/filters_private_active.png diff --git a/Telegram/Resources/icons/filters_private_active@2x.png b/Telegram/Resources/icons/filters/filters_private_active@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_private_active@2x.png rename to Telegram/Resources/icons/filters/filters_private_active@2x.png diff --git a/Telegram/Resources/icons/filters_private_active@3x.png b/Telegram/Resources/icons/filters/filters_private_active@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_private_active@3x.png rename to Telegram/Resources/icons/filters/filters_private_active@3x.png diff --git a/Telegram/Resources/icons/filters_setup.png b/Telegram/Resources/icons/filters/filters_setup.png similarity index 100% rename from Telegram/Resources/icons/filters_setup.png rename to Telegram/Resources/icons/filters/filters_setup.png diff --git a/Telegram/Resources/icons/filters_setup@2x.png b/Telegram/Resources/icons/filters/filters_setup@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_setup@2x.png rename to Telegram/Resources/icons/filters/filters_setup@2x.png diff --git a/Telegram/Resources/icons/filters_setup@3x.png b/Telegram/Resources/icons/filters/filters_setup@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_setup@3x.png rename to Telegram/Resources/icons/filters/filters_setup@3x.png diff --git a/Telegram/Resources/icons/filters_unmuted.png b/Telegram/Resources/icons/filters/filters_unmuted.png similarity index 100% rename from Telegram/Resources/icons/filters_unmuted.png rename to Telegram/Resources/icons/filters/filters_unmuted.png diff --git a/Telegram/Resources/icons/filters_unmuted@2x.png b/Telegram/Resources/icons/filters/filters_unmuted@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_unmuted@2x.png rename to Telegram/Resources/icons/filters/filters_unmuted@2x.png diff --git a/Telegram/Resources/icons/filters_unmuted@3x.png b/Telegram/Resources/icons/filters/filters_unmuted@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_unmuted@3x.png rename to Telegram/Resources/icons/filters/filters_unmuted@3x.png diff --git a/Telegram/Resources/icons/filters/filters_unmuted_active.png b/Telegram/Resources/icons/filters/filters_unmuted_active.png new file mode 100644 index 0000000000..39da6995d3 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_unmuted_active.png differ diff --git a/Telegram/Resources/icons/filters/filters_unmuted_active@2x.png b/Telegram/Resources/icons/filters/filters_unmuted_active@2x.png new file mode 100644 index 0000000000..1613a7ef30 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_unmuted_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/filters_unmuted_active@3x.png b/Telegram/Resources/icons/filters/filters_unmuted_active@3x.png new file mode 100644 index 0000000000..1cb402100b Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_unmuted_active@3x.png differ diff --git a/Telegram/Resources/icons/filters_unread.png b/Telegram/Resources/icons/filters/filters_unread.png similarity index 100% rename from Telegram/Resources/icons/filters_unread.png rename to Telegram/Resources/icons/filters/filters_unread.png diff --git a/Telegram/Resources/icons/filters_unread@2x.png b/Telegram/Resources/icons/filters/filters_unread@2x.png similarity index 100% rename from Telegram/Resources/icons/filters_unread@2x.png rename to Telegram/Resources/icons/filters/filters_unread@2x.png diff --git a/Telegram/Resources/icons/filters_unread@3x.png b/Telegram/Resources/icons/filters/filters_unread@3x.png similarity index 100% rename from Telegram/Resources/icons/filters_unread@3x.png rename to Telegram/Resources/icons/filters/filters_unread@3x.png diff --git a/Telegram/Resources/icons/filters/filters_unread_active.png b/Telegram/Resources/icons/filters/filters_unread_active.png new file mode 100644 index 0000000000..b7169765cd Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_unread_active.png differ diff --git a/Telegram/Resources/icons/filters/filters_unread_active@2x.png b/Telegram/Resources/icons/filters/filters_unread_active@2x.png new file mode 100644 index 0000000000..38bcba6967 Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_unread_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/filters_unread_active@3x.png b/Telegram/Resources/icons/filters/filters_unread_active@3x.png new file mode 100644 index 0000000000..99bd33737d Binary files /dev/null and b/Telegram/Resources/icons/filters/filters_unread_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_cat.png b/Telegram/Resources/icons/filters/folders_cat.png new file mode 100644 index 0000000000..67748a1f68 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_cat.png differ diff --git a/Telegram/Resources/icons/filters/folders_cat@2x.png b/Telegram/Resources/icons/filters/folders_cat@2x.png new file mode 100644 index 0000000000..aa08a4b4c7 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_cat@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_cat@3x.png b/Telegram/Resources/icons/filters/folders_cat@3x.png new file mode 100644 index 0000000000..ef978ea92c Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_cat@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_cat_active.png b/Telegram/Resources/icons/filters/folders_cat_active.png new file mode 100644 index 0000000000..6f9e33981b Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_cat_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_cat_active@2x.png b/Telegram/Resources/icons/filters/folders_cat_active@2x.png new file mode 100644 index 0000000000..012424adef Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_cat_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_cat_active@3x.png b/Telegram/Resources/icons/filters/folders_cat_active@3x.png new file mode 100644 index 0000000000..13ed57f1d5 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_cat_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_crown.png b/Telegram/Resources/icons/filters/folders_crown.png new file mode 100644 index 0000000000..ab4a485675 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_crown.png differ diff --git a/Telegram/Resources/icons/filters/folders_crown@2x.png b/Telegram/Resources/icons/filters/folders_crown@2x.png new file mode 100644 index 0000000000..a091297e7e Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_crown@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_crown@3x.png b/Telegram/Resources/icons/filters/folders_crown@3x.png new file mode 100644 index 0000000000..b7d6091910 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_crown@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_crown_active.png b/Telegram/Resources/icons/filters/folders_crown_active.png new file mode 100644 index 0000000000..f14e27d9ae Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_crown_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_crown_active@2x.png b/Telegram/Resources/icons/filters/folders_crown_active@2x.png new file mode 100644 index 0000000000..be26b69d7f Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_crown_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_crown_active@3x.png b/Telegram/Resources/icons/filters/folders_crown_active@3x.png new file mode 100644 index 0000000000..0399765e7c Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_crown_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_favorite.png b/Telegram/Resources/icons/filters/folders_favorite.png new file mode 100644 index 0000000000..400fb9612e Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_favorite.png differ diff --git a/Telegram/Resources/icons/filters/folders_favorite@2x.png b/Telegram/Resources/icons/filters/folders_favorite@2x.png new file mode 100644 index 0000000000..36102a2b54 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_favorite@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_favorite@3x.png b/Telegram/Resources/icons/filters/folders_favorite@3x.png new file mode 100644 index 0000000000..117bd86c53 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_favorite@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_favorite_active.png b/Telegram/Resources/icons/filters/folders_favorite_active.png new file mode 100644 index 0000000000..e45aa53a46 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_favorite_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_favorite_active@2x.png b/Telegram/Resources/icons/filters/folders_favorite_active@2x.png new file mode 100644 index 0000000000..faebedbba9 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_favorite_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_favorite_active@3x.png b/Telegram/Resources/icons/filters/folders_favorite_active@3x.png new file mode 100644 index 0000000000..88d4504acf Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_favorite_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_flower.png b/Telegram/Resources/icons/filters/folders_flower.png new file mode 100644 index 0000000000..3c452c82a8 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_flower.png differ diff --git a/Telegram/Resources/icons/filters/folders_flower@2x.png b/Telegram/Resources/icons/filters/folders_flower@2x.png new file mode 100644 index 0000000000..e6ad0af470 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_flower@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_flower@3x.png b/Telegram/Resources/icons/filters/folders_flower@3x.png new file mode 100644 index 0000000000..a143804ccb Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_flower@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_flower_active.png b/Telegram/Resources/icons/filters/folders_flower_active.png new file mode 100644 index 0000000000..598554c474 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_flower_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_flower_active@2x.png b/Telegram/Resources/icons/filters/folders_flower_active@2x.png new file mode 100644 index 0000000000..d4d897d0bb Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_flower_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_flower_active@3x.png b/Telegram/Resources/icons/filters/folders_flower_active@3x.png new file mode 100644 index 0000000000..ecb2169eb1 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_flower_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_game.png b/Telegram/Resources/icons/filters/folders_game.png new file mode 100644 index 0000000000..69119b7d93 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_game.png differ diff --git a/Telegram/Resources/icons/filters/folders_game@2x.png b/Telegram/Resources/icons/filters/folders_game@2x.png new file mode 100644 index 0000000000..09fd05fe43 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_game@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_game@3x.png b/Telegram/Resources/icons/filters/folders_game@3x.png new file mode 100644 index 0000000000..84e31f5333 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_game@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_game_active.png b/Telegram/Resources/icons/filters/folders_game_active.png new file mode 100644 index 0000000000..37ed6f20a9 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_game_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_game_active@2x.png b/Telegram/Resources/icons/filters/folders_game_active@2x.png new file mode 100644 index 0000000000..5e6d6edc16 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_game_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_game_active@3x.png b/Telegram/Resources/icons/filters/folders_game_active@3x.png new file mode 100644 index 0000000000..5949304685 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_game_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_home.png b/Telegram/Resources/icons/filters/folders_home.png new file mode 100644 index 0000000000..59ef27c921 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_home.png differ diff --git a/Telegram/Resources/icons/filters/folders_home@2x.png b/Telegram/Resources/icons/filters/folders_home@2x.png new file mode 100644 index 0000000000..4ec5954c75 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_home@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_home@3x.png b/Telegram/Resources/icons/filters/folders_home@3x.png new file mode 100644 index 0000000000..52e1477322 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_home@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_home_active.png b/Telegram/Resources/icons/filters/folders_home_active.png new file mode 100644 index 0000000000..cfd99be56f Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_home_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_home_active@2x.png b/Telegram/Resources/icons/filters/folders_home_active@2x.png new file mode 100644 index 0000000000..55aee99ed2 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_home_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_home_active@3x.png b/Telegram/Resources/icons/filters/folders_home_active@3x.png new file mode 100644 index 0000000000..6d148e1157 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_home_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_love.png b/Telegram/Resources/icons/filters/folders_love.png new file mode 100644 index 0000000000..701cd807fa Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_love.png differ diff --git a/Telegram/Resources/icons/filters/folders_love@2x.png b/Telegram/Resources/icons/filters/folders_love@2x.png new file mode 100644 index 0000000000..27e5a1dc99 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_love@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_love@3x.png b/Telegram/Resources/icons/filters/folders_love@3x.png new file mode 100644 index 0000000000..41b44363e9 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_love@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_love_active.png b/Telegram/Resources/icons/filters/folders_love_active.png new file mode 100644 index 0000000000..cea3b50dc6 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_love_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_love_active@2x.png b/Telegram/Resources/icons/filters/folders_love_active@2x.png new file mode 100644 index 0000000000..55997b62d4 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_love_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_love_active@3x.png b/Telegram/Resources/icons/filters/folders_love_active@3x.png new file mode 100644 index 0000000000..b1477710a1 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_love_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_mask.png b/Telegram/Resources/icons/filters/folders_mask.png new file mode 100644 index 0000000000..86dc6c336a Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_mask.png differ diff --git a/Telegram/Resources/icons/filters/folders_mask@2x.png b/Telegram/Resources/icons/filters/folders_mask@2x.png new file mode 100644 index 0000000000..42fa98a5de Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_mask@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_mask@3x.png b/Telegram/Resources/icons/filters/folders_mask@3x.png new file mode 100644 index 0000000000..14eb2ded4b Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_mask@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_mask_active.png b/Telegram/Resources/icons/filters/folders_mask_active.png new file mode 100644 index 0000000000..837922a11a Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_mask_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_mask_active@2x.png b/Telegram/Resources/icons/filters/folders_mask_active@2x.png new file mode 100644 index 0000000000..9d7918a6ab Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_mask_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_mask_active@3x.png b/Telegram/Resources/icons/filters/folders_mask_active@3x.png new file mode 100644 index 0000000000..9c36ab932e Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_mask_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_party.png b/Telegram/Resources/icons/filters/folders_party.png new file mode 100644 index 0000000000..144a8600d7 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_party.png differ diff --git a/Telegram/Resources/icons/filters/folders_party@2x.png b/Telegram/Resources/icons/filters/folders_party@2x.png new file mode 100644 index 0000000000..4c4d992186 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_party@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_party@3x.png b/Telegram/Resources/icons/filters/folders_party@3x.png new file mode 100644 index 0000000000..652338b078 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_party@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_party_active.png b/Telegram/Resources/icons/filters/folders_party_active.png new file mode 100644 index 0000000000..16ab0fcfb3 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_party_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_party_active@2x.png b/Telegram/Resources/icons/filters/folders_party_active@2x.png new file mode 100644 index 0000000000..e12213328b Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_party_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_party_active@3x.png b/Telegram/Resources/icons/filters/folders_party_active@3x.png new file mode 100644 index 0000000000..123d39f2a8 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_party_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_sport.png b/Telegram/Resources/icons/filters/folders_sport.png new file mode 100644 index 0000000000..b59aa62a3b Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_sport.png differ diff --git a/Telegram/Resources/icons/filters/folders_sport@2x.png b/Telegram/Resources/icons/filters/folders_sport@2x.png new file mode 100644 index 0000000000..16d7bdf571 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_sport@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_sport@3x.png b/Telegram/Resources/icons/filters/folders_sport@3x.png new file mode 100644 index 0000000000..422af43e61 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_sport@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_sport_active.png b/Telegram/Resources/icons/filters/folders_sport_active.png new file mode 100644 index 0000000000..c3581bc347 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_sport_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_sport_active@2x.png b/Telegram/Resources/icons/filters/folders_sport_active@2x.png new file mode 100644 index 0000000000..50138d104b Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_sport_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_sport_active@3x.png b/Telegram/Resources/icons/filters/folders_sport_active@3x.png new file mode 100644 index 0000000000..f4bdb1f090 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_sport_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_study.png b/Telegram/Resources/icons/filters/folders_study.png new file mode 100644 index 0000000000..dbbb4cc2f2 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_study.png differ diff --git a/Telegram/Resources/icons/filters/folders_study@2x.png b/Telegram/Resources/icons/filters/folders_study@2x.png new file mode 100644 index 0000000000..96b2814913 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_study@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_study@3x.png b/Telegram/Resources/icons/filters/folders_study@3x.png new file mode 100644 index 0000000000..c76dc5cf26 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_study@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_study_active.png b/Telegram/Resources/icons/filters/folders_study_active.png new file mode 100644 index 0000000000..379d328543 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_study_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_study_active@2x.png b/Telegram/Resources/icons/filters/folders_study_active@2x.png new file mode 100644 index 0000000000..4ba6d66b92 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_study_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_study_active@3x.png b/Telegram/Resources/icons/filters/folders_study_active@3x.png new file mode 100644 index 0000000000..dff4822feb Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_study_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_trade.png b/Telegram/Resources/icons/filters/folders_trade.png new file mode 100644 index 0000000000..62cbae9a8f Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_trade.png differ diff --git a/Telegram/Resources/icons/filters/folders_trade@2x.png b/Telegram/Resources/icons/filters/folders_trade@2x.png new file mode 100644 index 0000000000..db435b6ebf Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_trade@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_trade@3x.png b/Telegram/Resources/icons/filters/folders_trade@3x.png new file mode 100644 index 0000000000..c854a9497b Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_trade@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_travel.png b/Telegram/Resources/icons/filters/folders_travel.png new file mode 100644 index 0000000000..886fcaf538 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_travel.png differ diff --git a/Telegram/Resources/icons/filters/folders_travel@2x.png b/Telegram/Resources/icons/filters/folders_travel@2x.png new file mode 100644 index 0000000000..e5df48b957 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_travel@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_travel@3x.png b/Telegram/Resources/icons/filters/folders_travel@3x.png new file mode 100644 index 0000000000..0897aeee3f Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_travel@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_travel_active.png b/Telegram/Resources/icons/filters/folders_travel_active.png new file mode 100644 index 0000000000..7774ca0252 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_travel_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_travel_active@2x.png b/Telegram/Resources/icons/filters/folders_travel_active@2x.png new file mode 100644 index 0000000000..059b6b0ffd Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_travel_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_travel_active@3x.png b/Telegram/Resources/icons/filters/folders_travel_active@3x.png new file mode 100644 index 0000000000..2a5b35492d Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_travel_active@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_work.png b/Telegram/Resources/icons/filters/folders_work.png new file mode 100644 index 0000000000..9be9132ee7 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_work.png differ diff --git a/Telegram/Resources/icons/filters/folders_work@2x.png b/Telegram/Resources/icons/filters/folders_work@2x.png new file mode 100644 index 0000000000..a70a41ac11 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_work@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_work@3x.png b/Telegram/Resources/icons/filters/folders_work@3x.png new file mode 100644 index 0000000000..91d9b99cb2 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_work@3x.png differ diff --git a/Telegram/Resources/icons/filters/folders_work_active.png b/Telegram/Resources/icons/filters/folders_work_active.png new file mode 100644 index 0000000000..26fceb1a07 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_work_active.png differ diff --git a/Telegram/Resources/icons/filters/folders_work_active@2x.png b/Telegram/Resources/icons/filters/folders_work_active@2x.png new file mode 100644 index 0000000000..2dbd8b3f01 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_work_active@2x.png differ diff --git a/Telegram/Resources/icons/filters/folders_work_active@3x.png b/Telegram/Resources/icons/filters/folders_work_active@3x.png new file mode 100644 index 0000000000..c4391725c8 Binary files /dev/null and b/Telegram/Resources/icons/filters/folders_work_active@3x.png differ diff --git a/Telegram/Resources/icons/filters_all_active.png b/Telegram/Resources/icons/filters_all_active.png deleted file mode 100644 index 133c37a7ae..0000000000 Binary files a/Telegram/Resources/icons/filters_all_active.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_all_active@2x.png b/Telegram/Resources/icons/filters_all_active@2x.png deleted file mode 100644 index 762dc383de..0000000000 Binary files a/Telegram/Resources/icons/filters_all_active@2x.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_all_active@3x.png b/Telegram/Resources/icons/filters_all_active@3x.png deleted file mode 100644 index 8a610c42fd..0000000000 Binary files a/Telegram/Resources/icons/filters_all_active@3x.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_channels.png b/Telegram/Resources/icons/filters_channels.png deleted file mode 100644 index 1c0c0601de..0000000000 Binary files a/Telegram/Resources/icons/filters_channels.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_channels@2x.png b/Telegram/Resources/icons/filters_channels@2x.png deleted file mode 100644 index 290d47fede..0000000000 Binary files a/Telegram/Resources/icons/filters_channels@2x.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_channels@3x.png b/Telegram/Resources/icons/filters_channels@3x.png deleted file mode 100644 index e896f45dfa..0000000000 Binary files a/Telegram/Resources/icons/filters_channels@3x.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_channels_active.png b/Telegram/Resources/icons/filters_channels_active.png deleted file mode 100644 index c76a77f8b6..0000000000 Binary files a/Telegram/Resources/icons/filters_channels_active.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_channels_active@2x.png b/Telegram/Resources/icons/filters_channels_active@2x.png deleted file mode 100644 index 87b26cd9de..0000000000 Binary files a/Telegram/Resources/icons/filters_channels_active@2x.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_channels_active@3x.png b/Telegram/Resources/icons/filters_channels_active@3x.png deleted file mode 100644 index 535124d2a5..0000000000 Binary files a/Telegram/Resources/icons/filters_channels_active@3x.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_unmuted_active.png b/Telegram/Resources/icons/filters_unmuted_active.png deleted file mode 100644 index b9751337f3..0000000000 Binary files a/Telegram/Resources/icons/filters_unmuted_active.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_unmuted_active@2x.png b/Telegram/Resources/icons/filters_unmuted_active@2x.png deleted file mode 100644 index a1ed122a89..0000000000 Binary files a/Telegram/Resources/icons/filters_unmuted_active@2x.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_unmuted_active@3x.png b/Telegram/Resources/icons/filters_unmuted_active@3x.png deleted file mode 100644 index 3e32c351d3..0000000000 Binary files a/Telegram/Resources/icons/filters_unmuted_active@3x.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_unread_active.png b/Telegram/Resources/icons/filters_unread_active.png deleted file mode 100644 index 556111486a..0000000000 Binary files a/Telegram/Resources/icons/filters_unread_active.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_unread_active@2x.png b/Telegram/Resources/icons/filters_unread_active@2x.png deleted file mode 100644 index ebe4a185c2..0000000000 Binary files a/Telegram/Resources/icons/filters_unread_active@2x.png and /dev/null differ diff --git a/Telegram/Resources/icons/filters_unread_active@3x.png b/Telegram/Resources/icons/filters_unread_active@3x.png deleted file mode 100644 index 87cfe1d890..0000000000 Binary files a/Telegram/Resources/icons/filters_unread_active@3x.png and /dev/null differ diff --git a/Telegram/SourceFiles/ui/filter_icons.cpp b/Telegram/SourceFiles/ui/filter_icons.cpp new file mode 100644 index 0000000000..cbff50b6da --- /dev/null +++ b/Telegram/SourceFiles/ui/filter_icons.cpp @@ -0,0 +1,50 @@ +/* +This file is part of Telegram Desktop, +the official desktop application for the Telegram messaging service. + +For license and copyright information please follow this link: +https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL +*/ +#include "ui/filter_icons.h" + +#include "styles/style_filter_icons.h" + +namespace Ui { +namespace { + +const auto kIcons = std::vector{ + { &st::filtersAll, &st::filtersAllActive }, + { &st::filtersUnread, &st::filtersAllActive }, + { &st::filtersUnmuted, &st::filtersAllActive }, + { &st::filtersBots, &st::filtersAllActive }, + { &st::filtersChannels, &st::filtersChannelsActive }, + { &st::filtersGroups, &st::filtersGroupsActive }, + { &st::filtersPrivate, &st::filtersPrivateActive }, + { &st::filtersCustom, &st::filtersCustomActive }, + { &st::filtersSetup, &st::filtersSetup }, + { &st::foldersCat, &st::foldersCatActive }, + { &st::foldersCrown, &st::foldersCrownActive }, + { &st::foldersFavorite, &st::foldersFavoriteActive }, + { &st::foldersFlower, &st::foldersFlowerActive }, + { &st::foldersGame, &st::foldersGameActive }, + { &st::foldersHome, &st::foldersHomeActive }, + { &st::foldersLove, &st::foldersLoveActive }, + { &st::foldersMask, &st::foldersMaskActive }, + { &st::foldersParty, &st::foldersPartyActive }, + { &st::foldersSport, &st::foldersSportActive }, + { &st::foldersStudy, &st::foldersStudyActive }, + { &st::foldersTrade, &st::foldersTrade }, + { &st::foldersTravel, &st::foldersTravelActive }, + { &st::foldersWork, &st::foldersWorkActive }, +}; + +} // namespace + +const FilterIcons &LookupFilterIcon(FilterIcon icon) { + Expects(static_cast(icon) >= 0 + && static_cast(icon) < kIcons.size()); + + return kIcons[static_cast(icon)]; +} + +} // namespace Ui diff --git a/Telegram/SourceFiles/ui/filter_icons.h b/Telegram/SourceFiles/ui/filter_icons.h new file mode 100644 index 0000000000..cbddff8199 --- /dev/null +++ b/Telegram/SourceFiles/ui/filter_icons.h @@ -0,0 +1,52 @@ +/* +This file is part of Telegram Desktop, +the official desktop application for the Telegram messaging service. + +For license and copyright information please follow this link: +https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL +*/ +#pragma once + +namespace style { +namespace internal { +class Icon; +} // namespace internal +} // namespace style + +namespace Ui { + +enum class FilterIcon : uchar { + All, + Unread, + Unmuted, + Bots, + Channels, + Groups, + Private, + Custom, + Setup, + + Cat, + Crown, + Favorite, + Flower, + Game, + Home, + Love, + Mask, + Party, + Sport, + Study, + Trade, + Travel, + Work, +}; + +struct FilterIcons { + not_null normal; + not_null active; +}; + +[[nodiscard]] const FilterIcons &LookupFilterIcon(FilterIcon icon); + +} // namespace Ui diff --git a/Telegram/SourceFiles/ui/filter_icons.style b/Telegram/SourceFiles/ui/filter_icons.style new file mode 100644 index 0000000000..7eed1b1474 --- /dev/null +++ b/Telegram/SourceFiles/ui/filter_icons.style @@ -0,0 +1,54 @@ +/* +This file is part of Telegram Desktop, +the official desktop application for the Telegram messaging service. + +For license and copyright information please follow this link: +https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL +*/ +using "ui/colors.palette"; + +filtersAll: icon {{ "filters/filters_all", sideBarIconFg }}; +filtersAllActive: icon {{ "filters/filters_all_active", sideBarIconFgActive }}; +filtersUnread: icon {{ "filters/filters_unread", sideBarIconFg }}; +filtersUnreadActive: icon {{ "filters/filters_unread_active", sideBarIconFgActive }}; +filtersUnmuted: icon {{ "filters/filters_unmuted", sideBarIconFg }}; +filtersUnmutedActive: icon {{ "filters/filters_unmuted_active", sideBarIconFgActive }}; +filtersBots: icon {{ "filters/filters_bots", sideBarIconFg }}; +filtersBotsActive: icon {{ "filters/filters_bots_active", sideBarIconFgActive }}; +filtersChannels: icon {{ "filters/filters_channels", sideBarIconFg }}; +filtersChannelsActive: icon {{ "filters/filters_channels_active", sideBarIconFgActive }}; +filtersGroups: icon {{ "filters/filters_groups", sideBarIconFg }}; +filtersGroupsActive: icon {{ "filters/filters_groups_active", sideBarIconFgActive }}; +filtersPrivate: icon {{ "filters/filters_private", sideBarIconFg }}; +filtersPrivateActive: icon {{ "filters/filters_private_active", sideBarIconFgActive }}; +filtersCustom: icon {{ "filters/filters_custom", sideBarIconFg }}; +filtersCustomActive: icon {{ "filters/filters_custom_active", sideBarIconFgActive }}; +filtersSetup: icon {{ "filters/filters_setup", sideBarIconFg }}; + +foldersCat: icon {{ "filters/folders_cat", sideBarIconFg }}; +foldersCatActive: icon {{ "filters/folders_cat_active", sideBarIconFg }}; +foldersCrown: icon {{ "filters/folders_crown", sideBarIconFg }}; +foldersCrownActive: icon {{ "filters/folders_crown_active", sideBarIconFgActive }}; +foldersFavorite: icon {{ "filters/folders_favorite", sideBarIconFg }}; +foldersFavoriteActive: icon {{ "filters/folders_favorite_active", sideBarIconFgActive }}; +foldersFlower: icon {{ "filters/folders_flower", sideBarIconFg }}; +foldersFlowerActive: icon {{ "filters/folders_flower_active", sideBarIconFgActive }}; +foldersGame: icon {{ "filters/folders_game", sideBarIconFg }}; +foldersGameActive: icon {{ "filters/folders_game_active", sideBarIconFgActive }}; +foldersHome: icon {{ "filters/folders_home", sideBarIconFg }}; +foldersHomeActive: icon {{ "filters/folders_home_active", sideBarIconFgActive }}; +foldersLove: icon {{ "filters/folders_love", sideBarIconFg }}; +foldersLoveActive: icon {{ "filters/folders_love_active", sideBarIconFgActive }}; +foldersMask: icon {{ "filters/folders_mask", sideBarIconFg }}; +foldersMaskActive: icon {{ "filters/folders_mask_active", sideBarIconFgActive }}; +foldersParty: icon {{ "filters/folders_party", sideBarIconFg }}; +foldersPartyActive: icon {{ "filters/folders_party_active", sideBarIconFgActive }}; +foldersSport: icon {{ "filters/folders_sport", sideBarIconFg }}; +foldersSportActive: icon {{ "filters/folders_sport_active", sideBarIconFgActive }}; +foldersStudy: icon {{ "filters/folders_study", sideBarIconFg }}; +foldersStudyActive: icon {{ "filters/folders_study_active", sideBarIconFgActive }}; +foldersTrade: icon {{ "filters/folders_trade", sideBarIconFg }}; +foldersTravel: icon {{ "filters/folders_travel", sideBarIconFg }}; +foldersTravelActive: icon {{ "filters/folders_travel_active", sideBarIconFgActive }}; +foldersWork: icon {{ "filters/folders_work", sideBarIconFg }}; +foldersWorkActive: icon {{ "filters/folders_work_active", sideBarIconFgActive }}; diff --git a/Telegram/SourceFiles/window/window.style b/Telegram/SourceFiles/window/window.style index 2800c0832a..bb80c2de6b 100644 --- a/Telegram/SourceFiles/window/window.style +++ b/Telegram/SourceFiles/window/window.style @@ -268,41 +268,6 @@ windowFiltersMainMenu: SideBarButton(windowFiltersButton) { iconPosition: point(-1px, -1px); minHeight: 54px; } -windowFiltersAll: SideBarButton(windowFiltersButton) { - icon: icon {{ "filters_all", sideBarIconFg }}; - iconActive: icon {{ "filters_all_active", sideBarIconFgActive }}; -} -windowFiltersUnread: SideBarButton(windowFiltersButton) { - icon: icon {{ "filters_unread", sideBarIconFg }}; - iconActive: icon {{ "filters_unread_active", sideBarIconFgActive }}; -} -windowFiltersUnmuted: SideBarButton(windowFiltersButton) { - icon: icon {{ "filters_unmuted", sideBarIconFg }}; - iconActive: icon {{ "filters_unmuted_active", sideBarIconFgActive }}; -} -windowFiltersBots: SideBarButton(windowFiltersButton) { - icon: icon {{ "filters_bots", sideBarIconFg }}; - iconActive: icon {{ "filters_bots_active", sideBarIconFgActive }}; -} -windowFiltersChannels: SideBarButton(windowFiltersButton) { - icon: icon {{ "filters_channels", sideBarIconFg }}; - iconActive: icon {{ "filters_channels_active", sideBarIconFgActive }}; -} -windowFiltersGroups: SideBarButton(windowFiltersButton) { - icon: icon {{ "filters_groups", sideBarIconFg }}; - iconActive: icon {{ "filters_groups_active", sideBarIconFgActive }}; -} -windowFiltersPrivate: SideBarButton(windowFiltersButton) { - icon: icon {{ "filters_private", sideBarIconFg }}; - iconActive: icon {{ "filters_private_active", sideBarIconFgActive }}; -} -windowFiltersCustom: SideBarButton(windowFiltersButton) { - icon: icon {{ "filters_custom", sideBarIconFg }}; - iconActive: icon {{ "filters_custom_active", sideBarIconFgActive }}; -} -windowFiltersSetup: SideBarButton(windowFiltersButton) { - icon: icon {{ "filters_setup", sideBarIconFg }}; -} windowFilterSmallItem: PeerListItem(defaultPeerListItem) { height: 44px; photoPosition: point(15px, 5px); diff --git a/Telegram/SourceFiles/window/window_filters_menu.cpp b/Telegram/SourceFiles/window/window_filters_menu.cpp index d9045a768b..a0cbf3edbf 100644 --- a/Telegram/SourceFiles/window/window_filters_menu.cpp +++ b/Telegram/SourceFiles/window/window_filters_menu.cpp @@ -15,23 +15,16 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "data/data_chat_filters.h" #include "boxes/filters/manage_filters_box.h" #include "lang/lang_keys.h" +#include "ui/filter_icons.h" #include "styles/style_widgets.h" #include "styles/style_window.h" namespace Window { namespace { -enum class Type { - Unread, - Unmuted, - People, - Groups, - Channels, - Bots, - Custom, -}; +using Icon = Ui::FilterIcon; -[[nodiscard]] Type ComputeType(const Data::ChatFilter &filter) { +[[nodiscard]] Icon ComputeIcon(const Data::ChatFilter &filter) { using Flag = Data::ChatFilter::Flag; const auto all = Flag::Contacts @@ -45,36 +38,23 @@ enum class Type { if (!filter.always().empty() || !filter.never().empty() || !(filter.flags() & all)) { - return Type::Custom; + return Icon::Custom; } else if ((filter.flags() & all) == Flag::Contacts || (filter.flags() & all) == Flag::NonContacts || (filter.flags() & all) == people) { - return Type::People; + return Icon::Private; } else if ((filter.flags() & all) == Flag::Groups) { - return Type::Groups; + return Icon::Groups; } else if ((filter.flags() & all) == Flag::Channels) { - return Type::Channels; + return Icon::Channels; } else if ((filter.flags() & all) == Flag::Bots) { - return Type::Bots; + return Icon::Bots; } else if ((filter.flags() & removed) == Flag::NoRead) { - return Type::Unread; + return Icon::Unread; } else if ((filter.flags() & removed) == Flag::NoMuted) { - return Type::Unmuted; + return Icon::Unmuted; } - return Type::Custom; -} - -[[nodiscard]] const style::SideBarButton &ComputeStyle(Type type) { - switch (type) { - case Type::Unread: return st::windowFiltersUnread; - case Type::Unmuted: return st::windowFiltersUnmuted; - case Type::People: return st::windowFiltersPrivate; - case Type::Groups: return st::windowFiltersGroups; - case Type::Channels: return st::windowFiltersChannels; - case Type::Bots: return st::windowFiltersBots; - case Type::Custom: return st::windowFiltersCustom; - } - Unexpected("Filter type in FiltersMenu::refresh."); + return Icon::Custom; } } // namespace @@ -108,7 +88,7 @@ void FiltersMenu::setup() { if (!fill.isEmpty()) { auto p = QPainter(&_outer); p.setPen(Qt::NoPen); - p.setBrush(st::windowFiltersAll.textBg); + p.setBrush(st::windowFiltersButton.textBg); p.drawRect(fill); } }, _outer.lifetime()); @@ -166,13 +146,15 @@ void FiltersMenu::refresh() { const auto prepare = [&]( FilterId id, const QString &title, - const style::SideBarButton &st, + Icon icon, const QString &badge) { auto button = base::unique_qptr(_container->add( object_ptr( _container, title, - st))); + st::windowFiltersButton))); + const auto &icons = Ui::LookupFilterIcon(icon); + button->setIconOverride(icons.normal, icons.active); if (id > 0) { const auto list = filters->chatsList(id); rpl::single(rpl::empty_value()) | rpl::then( @@ -200,15 +182,15 @@ void FiltersMenu::refresh() { }); now.emplace(id, std::move(button)); }; - prepare(0, tr::lng_filters_all(tr::now), st::windowFiltersAll, {}); + prepare(0, tr::lng_filters_all(tr::now), Icon::All, {}); for (const auto filter : filters->list()) { prepare( filter.id(), filter.title(), - ComputeStyle(ComputeType(filter)), + ComputeIcon(filter), QString()); } - prepare(-1, tr::lng_filters_setup(tr::now), st::windowFiltersSetup, {}); + prepare(-1, tr::lng_filters_setup(tr::now), Icon::Setup, {}); _filters = std::move(now); } diff --git a/Telegram/lib_ui b/Telegram/lib_ui index 1f0a772b18..ec6744022c 160000 --- a/Telegram/lib_ui +++ b/Telegram/lib_ui @@ -1 +1 @@ -Subproject commit 1f0a772b1841af3e8e47b594369cbbf04c760e9f +Subproject commit ec6744022c1a86f3bead192f9649c10dc424a98b