From 2c36623cfb7999281ebb3e703d5f58e60fd85ea6 Mon Sep 17 00:00:00 2001 From: John Preston Date: Thu, 9 Dec 2021 21:56:24 +0400 Subject: [PATCH] Add some icons to popup menus. --- Telegram/Resources/icons/menu/add_account.png | Bin 0 -> 852 bytes .../Resources/icons/menu/add_account@2x.png | Bin 0 -> 1582 bytes .../Resources/icons/menu/add_account@3x.png | Bin 0 -> 2374 bytes Telegram/Resources/icons/menu/admin.png | Bin 0 -> 897 bytes Telegram/Resources/icons/menu/admin@2x.png | Bin 0 -> 1773 bytes Telegram/Resources/icons/menu/admin@3x.png | Bin 0 -> 2610 bytes .../Resources/icons/menu/admin_promote.png | Bin 0 -> 847 bytes .../Resources/icons/menu/admin_promote@2x.png | Bin 0 -> 1646 bytes .../Resources/icons/menu/admin_promote@3x.png | Bin 0 -> 2457 bytes Telegram/Resources/icons/menu/all_media.png | Bin 0 -> 542 bytes .../Resources/icons/menu/all_media@2x.png | Bin 0 -> 802 bytes .../Resources/icons/menu/all_media@3x.png | Bin 0 -> 1191 bytes Telegram/Resources/icons/menu/archive.png | Bin 0 -> 591 bytes Telegram/Resources/icons/menu/archive@2x.png | Bin 0 -> 926 bytes Telegram/Resources/icons/menu/archive@3x.png | Bin 0 -> 1395 bytes Telegram/Resources/icons/menu/block.png | Bin 0 -> 757 bytes Telegram/Resources/icons/menu/block@2x.png | Bin 0 -> 1416 bytes Telegram/Resources/icons/menu/block@3x.png | Bin 0 -> 2200 bytes Telegram/Resources/icons/menu/calendar.png | Bin 0 -> 495 bytes Telegram/Resources/icons/menu/calendar@2x.png | Bin 0 -> 726 bytes Telegram/Resources/icons/menu/calendar@3x.png | Bin 0 -> 925 bytes Telegram/Resources/icons/menu/cancel.png | Bin 0 -> 467 bytes Telegram/Resources/icons/menu/cancel@2x.png | Bin 0 -> 1025 bytes Telegram/Resources/icons/menu/cancel@3x.png | Bin 0 -> 1558 bytes Telegram/Resources/icons/menu/clear.png | Bin 0 -> 603 bytes Telegram/Resources/icons/menu/clear@2x.png | Bin 0 -> 1122 bytes Telegram/Resources/icons/menu/clear@3x.png | Bin 0 -> 1645 bytes Telegram/Resources/icons/menu/collapse.png | Bin 0 -> 450 bytes Telegram/Resources/icons/menu/collapse@2x.png | Bin 0 -> 614 bytes Telegram/Resources/icons/menu/collapse@3x.png | Bin 0 -> 749 bytes Telegram/Resources/icons/menu/colors.png | Bin 0 -> 837 bytes Telegram/Resources/icons/menu/colors@2x.png | Bin 0 -> 1593 bytes Telegram/Resources/icons/menu/colors@3x.png | Bin 0 -> 2388 bytes Telegram/Resources/icons/menu/copy.png | Bin 0 -> 463 bytes Telegram/Resources/icons/menu/copy@2x.png | Bin 0 -> 657 bytes Telegram/Resources/icons/menu/copy@3x.png | Bin 0 -> 1025 bytes Telegram/Resources/icons/menu/create_poll.png | Bin 0 -> 390 bytes .../Resources/icons/menu/create_poll@2x.png | Bin 0 -> 630 bytes .../Resources/icons/menu/create_poll@3x.png | Bin 0 -> 875 bytes Telegram/Resources/icons/menu/delete.png | Bin 0 -> 470 bytes Telegram/Resources/icons/menu/delete@2x.png | Bin 0 -> 837 bytes Telegram/Resources/icons/menu/delete@3x.png | Bin 0 -> 1229 bytes Telegram/Resources/icons/menu/discussion.png | Bin 0 -> 774 bytes .../Resources/icons/menu/discussion@2x.png | Bin 0 -> 1379 bytes .../Resources/icons/menu/discussion@3x.png | Bin 0 -> 2148 bytes Telegram/Resources/icons/menu/download.png | Bin 0 -> 394 bytes Telegram/Resources/icons/menu/download@2x.png | Bin 0 -> 660 bytes Telegram/Resources/icons/menu/download@3x.png | Bin 0 -> 893 bytes Telegram/Resources/icons/menu/edit.png | Bin 0 -> 440 bytes Telegram/Resources/icons/menu/edit@2x.png | Bin 0 -> 743 bytes Telegram/Resources/icons/menu/edit@3x.png | Bin 0 -> 951 bytes Telegram/Resources/icons/menu/expand.png | Bin 0 -> 450 bytes Telegram/Resources/icons/menu/expand@2x.png | Bin 0 -> 628 bytes Telegram/Resources/icons/menu/expand@3x.png | Bin 0 -> 763 bytes Telegram/Resources/icons/menu/export.png | Bin 0 -> 488 bytes Telegram/Resources/icons/menu/export@2x.png | Bin 0 -> 776 bytes Telegram/Resources/icons/menu/export@3x.png | Bin 0 -> 1078 bytes Telegram/Resources/icons/menu/favorite.png | Bin 0 -> 668 bytes Telegram/Resources/icons/menu/favorite@2x.png | Bin 0 -> 1255 bytes Telegram/Resources/icons/menu/favorite@3x.png | Bin 0 -> 1975 bytes Telegram/Resources/icons/menu/forward.png | Bin 0 -> 421 bytes Telegram/Resources/icons/menu/forward@2x.png | Bin 0 -> 644 bytes Telegram/Resources/icons/menu/forward@3x.png | Bin 0 -> 750 bytes Telegram/Resources/icons/menu/gif.png | Bin 0 -> 624 bytes Telegram/Resources/icons/menu/gif@2x.png | Bin 0 -> 1199 bytes Telegram/Resources/icons/menu/gif@3x.png | Bin 0 -> 1564 bytes Telegram/Resources/icons/menu/info.png | Bin 0 -> 528 bytes Telegram/Resources/icons/menu/info@2x.png | Bin 0 -> 1078 bytes Telegram/Resources/icons/menu/info@3x.png | Bin 0 -> 1660 bytes Telegram/Resources/icons/menu/invite.png | Bin 0 -> 664 bytes Telegram/Resources/icons/menu/invite@2x.png | Bin 0 -> 1225 bytes Telegram/Resources/icons/menu/invite@3x.png | Bin 0 -> 1739 bytes Telegram/Resources/icons/menu/leave.png | Bin 0 -> 555 bytes Telegram/Resources/icons/menu/leave@2x.png | Bin 0 -> 959 bytes Telegram/Resources/icons/menu/leave@3x.png | Bin 0 -> 1183 bytes Telegram/Resources/icons/menu/link.png | Bin 0 -> 595 bytes Telegram/Resources/icons/menu/link@2x.png | Bin 0 -> 753 bytes Telegram/Resources/icons/menu/link@3x.png | Bin 0 -> 1478 bytes Telegram/Resources/icons/menu/manage.png | Bin 0 -> 517 bytes Telegram/Resources/icons/menu/manage@2x.png | Bin 0 -> 630 bytes Telegram/Resources/icons/menu/manage@3x.png | Bin 0 -> 1165 bytes .../Resources/icons/menu/move_from_menu.png | Bin 0 -> 614 bytes .../icons/menu/move_from_menu@2x.png | Bin 0 -> 999 bytes .../icons/menu/move_from_menu@3x.png | Bin 0 -> 1428 bytes .../Resources/icons/menu/move_to_menu.png | Bin 0 -> 636 bytes .../Resources/icons/menu/move_to_menu@2x.png | Bin 0 -> 947 bytes .../Resources/icons/menu/move_to_menu@3x.png | Bin 0 -> 1429 bytes Telegram/Resources/icons/menu/mute.png | Bin 0 -> 765 bytes Telegram/Resources/icons/menu/mute@2x.png | Bin 0 -> 1359 bytes Telegram/Resources/icons/menu/mute@3x.png | Bin 0 -> 2127 bytes Telegram/Resources/icons/menu/permissions.png | Bin 0 -> 740 bytes .../Resources/icons/menu/permissions@2x.png | Bin 0 -> 1392 bytes .../Resources/icons/menu/permissions@3x.png | Bin 0 -> 1943 bytes Telegram/Resources/icons/menu/pin.png | Bin 0 -> 556 bytes Telegram/Resources/icons/menu/pin@2x.png | Bin 0 -> 887 bytes Telegram/Resources/icons/menu/pin@3x.png | Bin 0 -> 1349 bytes Telegram/Resources/icons/menu/profile.png | Bin 0 -> 795 bytes Telegram/Resources/icons/menu/profile@2x.png | Bin 0 -> 1419 bytes Telegram/Resources/icons/menu/profile@3x.png | Bin 0 -> 2264 bytes Telegram/Resources/icons/menu/qr_code.png | Bin 0 -> 588 bytes Telegram/Resources/icons/menu/qr_code@2x.png | Bin 0 -> 774 bytes Telegram/Resources/icons/menu/qr_code@3x.png | Bin 0 -> 1483 bytes Telegram/Resources/icons/menu/read.png | Bin 0 -> 829 bytes Telegram/Resources/icons/menu/read@2x.png | Bin 0 -> 1552 bytes Telegram/Resources/icons/menu/read@3x.png | Bin 0 -> 2355 bytes Telegram/Resources/icons/menu/read_audio.png | Bin 0 -> 527 bytes .../Resources/icons/menu/read_audio@2x.png | Bin 0 -> 1123 bytes .../Resources/icons/menu/read_audio@3x.png | Bin 0 -> 1657 bytes .../Resources/icons/menu/read_reactions.png | Bin 0 -> 820 bytes .../icons/menu/read_reactions@2x.png | Bin 0 -> 1628 bytes .../icons/menu/read_reactions@3x.png | Bin 0 -> 2462 bytes Telegram/Resources/icons/menu/read_ticks.png | Bin 0 -> 494 bytes .../Resources/icons/menu/read_ticks@2x.png | Bin 0 -> 727 bytes .../Resources/icons/menu/read_ticks@3x.png | Bin 0 -> 1259 bytes Telegram/Resources/icons/menu/reply.png | Bin 0 -> 429 bytes Telegram/Resources/icons/menu/reply@2x.png | Bin 0 -> 603 bytes Telegram/Resources/icons/menu/reply@3x.png | Bin 0 -> 798 bytes Telegram/Resources/icons/menu/report.png | Bin 0 -> 516 bytes Telegram/Resources/icons/menu/report@2x.png | Bin 0 -> 1059 bytes Telegram/Resources/icons/menu/report@3x.png | Bin 0 -> 1663 bytes Telegram/Resources/icons/menu/reschedule.png | Bin 0 -> 653 bytes .../Resources/icons/menu/reschedule@2x.png | Bin 0 -> 1253 bytes .../Resources/icons/menu/reschedule@3x.png | Bin 0 -> 1858 bytes Telegram/Resources/icons/menu/restart_bot.png | Bin 0 -> 718 bytes .../Resources/icons/menu/restart_bot@2x.png | Bin 0 -> 1331 bytes .../Resources/icons/menu/restart_bot@3x.png | Bin 0 -> 2060 bytes .../Resources/icons/menu/retract_vote.png | Bin 0 -> 790 bytes .../Resources/icons/menu/retract_vote@2x.png | Bin 0 -> 1460 bytes .../Resources/icons/menu/retract_vote@3x.png | Bin 0 -> 2199 bytes Telegram/Resources/icons/menu/save_image.png | Bin 0 -> 710 bytes .../Resources/icons/menu/save_image@2x.png | Bin 0 -> 1213 bytes .../Resources/icons/menu/save_image@3x.png | Bin 0 -> 1774 bytes Telegram/Resources/icons/menu/search.png | Bin 0 -> 576 bytes Telegram/Resources/icons/menu/search@2x.png | Bin 0 -> 1077 bytes Telegram/Resources/icons/menu/search@3x.png | Bin 0 -> 1166 bytes Telegram/Resources/icons/menu/select.png | Bin 0 -> 560 bytes Telegram/Resources/icons/menu/select@2x.png | Bin 0 -> 1110 bytes Telegram/Resources/icons/menu/select@3x.png | Bin 0 -> 1616 bytes Telegram/Resources/icons/menu/send.png | Bin 0 -> 726 bytes Telegram/Resources/icons/menu/send@2x.png | Bin 0 -> 1381 bytes Telegram/Resources/icons/menu/send@3x.png | Bin 0 -> 1976 bytes Telegram/Resources/icons/menu/share.png | Bin 0 -> 589 bytes Telegram/Resources/icons/menu/share@2x.png | Bin 0 -> 1144 bytes Telegram/Resources/icons/menu/share@3x.png | Bin 0 -> 1676 bytes .../Resources/icons/menu/show_in_chat.png | Bin 0 -> 698 bytes .../Resources/icons/menu/show_in_chat@2x.png | Bin 0 -> 1338 bytes .../Resources/icons/menu/show_in_chat@3x.png | Bin 0 -> 2091 bytes .../Resources/icons/menu/show_in_folder.png | Bin 0 -> 446 bytes .../icons/menu/show_in_folder@2x.png | Bin 0 -> 662 bytes .../icons/menu/show_in_folder@3x.png | Bin 0 -> 967 bytes Telegram/Resources/icons/menu/stickers.png | Bin 0 -> 712 bytes Telegram/Resources/icons/menu/stickers@2x.png | Bin 0 -> 1197 bytes Telegram/Resources/icons/menu/stickers@3x.png | Bin 0 -> 1930 bytes Telegram/Resources/icons/menu/stop_poll.png | Bin 0 -> 462 bytes .../Resources/icons/menu/stop_poll@2x.png | Bin 0 -> 966 bytes .../Resources/icons/menu/stop_poll@3x.png | Bin 0 -> 1461 bytes Telegram/Resources/icons/menu/unarchive.png | Bin 0 -> 589 bytes .../Resources/icons/menu/unarchive@2x.png | Bin 0 -> 935 bytes .../Resources/icons/menu/unarchive@3x.png | Bin 0 -> 1366 bytes Telegram/Resources/icons/menu/unblock.png | Bin 0 -> 781 bytes Telegram/Resources/icons/menu/unblock@2x.png | Bin 0 -> 1396 bytes Telegram/Resources/icons/menu/unblock@3x.png | Bin 0 -> 2049 bytes Telegram/Resources/icons/menu/unfavorite.png | Bin 0 -> 815 bytes .../Resources/icons/menu/unfavorite@2x.png | Bin 0 -> 1558 bytes .../Resources/icons/menu/unfavorite@3x.png | Bin 0 -> 2386 bytes Telegram/Resources/icons/menu/unmute.png | Bin 0 -> 680 bytes Telegram/Resources/icons/menu/unmute@2x.png | Bin 0 -> 1133 bytes Telegram/Resources/icons/menu/unmute@3x.png | Bin 0 -> 1920 bytes Telegram/Resources/icons/menu/unpin.png | Bin 0 -> 549 bytes Telegram/Resources/icons/menu/unpin@2x.png | Bin 0 -> 959 bytes Telegram/Resources/icons/menu/unpin@3x.png | Bin 0 -> 1297 bytes Telegram/Resources/icons/menu/unread.png | Bin 0 -> 739 bytes Telegram/Resources/icons/menu/unread@2x.png | Bin 0 -> 1398 bytes Telegram/Resources/icons/menu/unread@3x.png | Bin 0 -> 2053 bytes .../Resources/icons/menu/view_replies.png | Bin 0 -> 602 bytes .../Resources/icons/menu/view_replies@2x.png | Bin 0 -> 1039 bytes .../Resources/icons/menu/view_replies@3x.png | Bin 0 -> 1418 bytes Telegram/SourceFiles/boxes/connection_box.cpp | 16 ++- .../boxes/dictionaries_manager.cpp | 17 +-- Telegram/SourceFiles/boxes/language_box.cpp | 19 ++- .../boxes/peers/edit_participants_box.cpp | 27 ++-- .../boxes/peers/edit_peer_invite_link.cpp | 47 ++++--- .../boxes/peers/edit_peer_invite_links.cpp | 17 +-- .../SourceFiles/boxes/sticker_set_box.cpp | 27 ++-- .../calls/calls_box_controller.cpp | 7 +- .../chat_helpers/field_autocomplete.cpp | 7 +- .../chat_helpers/gifs_list_widget.cpp | 12 +- .../chat_helpers/gifs_list_widget.h | 2 +- .../chat_helpers/send_context_menu.cpp | 19 ++- .../chat_helpers/stickers_list_widget.cpp | 11 +- .../chat_helpers/tabbed_selector.cpp | 5 +- .../dialogs/dialogs_inner_widget.cpp | 14 ++- .../admin_log/history_admin_log_inner.cpp | 37 +++--- .../history/history_inner_widget.cpp | 89 ++++++------- .../view/history_view_context_menu.cpp | 85 ++++++++----- .../view/history_view_schedule_box.cpp | 8 +- .../view/history_view_top_bar_widget.cpp | 10 +- .../SourceFiles/info/info_wrap_widget.cpp | 10 +- .../info/media/info_media_list_widget.cpp | 39 ++++-- .../inline_bot_layout_internal.cpp | 2 +- .../inline_bots/inline_results_inner.cpp | 12 +- .../SourceFiles/settings/settings_common.cpp | 12 +- .../SourceFiles/settings/settings_common.h | 3 +- Telegram/SourceFiles/ui/chat/chat.style | 9 +- .../delete_message_context_action.cpp | 8 +- Telegram/SourceFiles/ui/menu_icons.style | 81 ++++++++++++ .../themes/window_themes_cloud_list.cpp | 11 +- .../window/window_filters_menu.cpp | 19 ++- .../SourceFiles/window/window_main_menu.cpp | 40 ++++-- .../SourceFiles/window/window_peer_menu.cpp | 118 ++++++++++++------ .../SourceFiles/window/window_peer_menu.h | 3 +- Telegram/cmake/td_ui.cmake | 1 + 212 files changed, 581 insertions(+), 263 deletions(-) create mode 100644 Telegram/Resources/icons/menu/add_account.png create mode 100644 Telegram/Resources/icons/menu/add_account@2x.png create mode 100644 Telegram/Resources/icons/menu/add_account@3x.png create mode 100644 Telegram/Resources/icons/menu/admin.png create mode 100644 Telegram/Resources/icons/menu/admin@2x.png create mode 100644 Telegram/Resources/icons/menu/admin@3x.png create mode 100644 Telegram/Resources/icons/menu/admin_promote.png create mode 100644 Telegram/Resources/icons/menu/admin_promote@2x.png create mode 100644 Telegram/Resources/icons/menu/admin_promote@3x.png create mode 100644 Telegram/Resources/icons/menu/all_media.png create mode 100644 Telegram/Resources/icons/menu/all_media@2x.png create mode 100644 Telegram/Resources/icons/menu/all_media@3x.png create mode 100644 Telegram/Resources/icons/menu/archive.png create mode 100644 Telegram/Resources/icons/menu/archive@2x.png create mode 100644 Telegram/Resources/icons/menu/archive@3x.png create mode 100644 Telegram/Resources/icons/menu/block.png create mode 100644 Telegram/Resources/icons/menu/block@2x.png create mode 100644 Telegram/Resources/icons/menu/block@3x.png create mode 100644 Telegram/Resources/icons/menu/calendar.png create mode 100644 Telegram/Resources/icons/menu/calendar@2x.png create mode 100644 Telegram/Resources/icons/menu/calendar@3x.png create mode 100644 Telegram/Resources/icons/menu/cancel.png create mode 100644 Telegram/Resources/icons/menu/cancel@2x.png create mode 100644 Telegram/Resources/icons/menu/cancel@3x.png create mode 100644 Telegram/Resources/icons/menu/clear.png create mode 100644 Telegram/Resources/icons/menu/clear@2x.png create mode 100644 Telegram/Resources/icons/menu/clear@3x.png create mode 100644 Telegram/Resources/icons/menu/collapse.png create mode 100644 Telegram/Resources/icons/menu/collapse@2x.png create mode 100644 Telegram/Resources/icons/menu/collapse@3x.png create mode 100644 Telegram/Resources/icons/menu/colors.png create mode 100644 Telegram/Resources/icons/menu/colors@2x.png create mode 100644 Telegram/Resources/icons/menu/colors@3x.png create mode 100644 Telegram/Resources/icons/menu/copy.png create mode 100644 Telegram/Resources/icons/menu/copy@2x.png create mode 100644 Telegram/Resources/icons/menu/copy@3x.png create mode 100644 Telegram/Resources/icons/menu/create_poll.png create mode 100644 Telegram/Resources/icons/menu/create_poll@2x.png create mode 100644 Telegram/Resources/icons/menu/create_poll@3x.png create mode 100644 Telegram/Resources/icons/menu/delete.png create mode 100644 Telegram/Resources/icons/menu/delete@2x.png create mode 100644 Telegram/Resources/icons/menu/delete@3x.png create mode 100644 Telegram/Resources/icons/menu/discussion.png create mode 100644 Telegram/Resources/icons/menu/discussion@2x.png create mode 100644 Telegram/Resources/icons/menu/discussion@3x.png create mode 100644 Telegram/Resources/icons/menu/download.png create mode 100644 Telegram/Resources/icons/menu/download@2x.png create mode 100644 Telegram/Resources/icons/menu/download@3x.png create mode 100644 Telegram/Resources/icons/menu/edit.png create mode 100644 Telegram/Resources/icons/menu/edit@2x.png create mode 100644 Telegram/Resources/icons/menu/edit@3x.png create mode 100644 Telegram/Resources/icons/menu/expand.png create mode 100644 Telegram/Resources/icons/menu/expand@2x.png create mode 100644 Telegram/Resources/icons/menu/expand@3x.png create mode 100644 Telegram/Resources/icons/menu/export.png create mode 100644 Telegram/Resources/icons/menu/export@2x.png create mode 100644 Telegram/Resources/icons/menu/export@3x.png create mode 100644 Telegram/Resources/icons/menu/favorite.png create mode 100644 Telegram/Resources/icons/menu/favorite@2x.png create mode 100644 Telegram/Resources/icons/menu/favorite@3x.png create mode 100644 Telegram/Resources/icons/menu/forward.png create mode 100644 Telegram/Resources/icons/menu/forward@2x.png create mode 100644 Telegram/Resources/icons/menu/forward@3x.png create mode 100644 Telegram/Resources/icons/menu/gif.png create mode 100644 Telegram/Resources/icons/menu/gif@2x.png create mode 100644 Telegram/Resources/icons/menu/gif@3x.png create mode 100644 Telegram/Resources/icons/menu/info.png create mode 100644 Telegram/Resources/icons/menu/info@2x.png create mode 100644 Telegram/Resources/icons/menu/info@3x.png create mode 100644 Telegram/Resources/icons/menu/invite.png create mode 100644 Telegram/Resources/icons/menu/invite@2x.png create mode 100644 Telegram/Resources/icons/menu/invite@3x.png create mode 100644 Telegram/Resources/icons/menu/leave.png create mode 100644 Telegram/Resources/icons/menu/leave@2x.png create mode 100644 Telegram/Resources/icons/menu/leave@3x.png create mode 100644 Telegram/Resources/icons/menu/link.png create mode 100644 Telegram/Resources/icons/menu/link@2x.png create mode 100644 Telegram/Resources/icons/menu/link@3x.png create mode 100644 Telegram/Resources/icons/menu/manage.png create mode 100644 Telegram/Resources/icons/menu/manage@2x.png create mode 100644 Telegram/Resources/icons/menu/manage@3x.png create mode 100644 Telegram/Resources/icons/menu/move_from_menu.png create mode 100644 Telegram/Resources/icons/menu/move_from_menu@2x.png create mode 100644 Telegram/Resources/icons/menu/move_from_menu@3x.png create mode 100644 Telegram/Resources/icons/menu/move_to_menu.png create mode 100644 Telegram/Resources/icons/menu/move_to_menu@2x.png create mode 100644 Telegram/Resources/icons/menu/move_to_menu@3x.png create mode 100644 Telegram/Resources/icons/menu/mute.png create mode 100644 Telegram/Resources/icons/menu/mute@2x.png create mode 100644 Telegram/Resources/icons/menu/mute@3x.png create mode 100644 Telegram/Resources/icons/menu/permissions.png create mode 100644 Telegram/Resources/icons/menu/permissions@2x.png create mode 100644 Telegram/Resources/icons/menu/permissions@3x.png create mode 100644 Telegram/Resources/icons/menu/pin.png create mode 100644 Telegram/Resources/icons/menu/pin@2x.png create mode 100644 Telegram/Resources/icons/menu/pin@3x.png create mode 100644 Telegram/Resources/icons/menu/profile.png create mode 100644 Telegram/Resources/icons/menu/profile@2x.png create mode 100644 Telegram/Resources/icons/menu/profile@3x.png create mode 100644 Telegram/Resources/icons/menu/qr_code.png create mode 100644 Telegram/Resources/icons/menu/qr_code@2x.png create mode 100644 Telegram/Resources/icons/menu/qr_code@3x.png create mode 100644 Telegram/Resources/icons/menu/read.png create mode 100644 Telegram/Resources/icons/menu/read@2x.png create mode 100644 Telegram/Resources/icons/menu/read@3x.png create mode 100644 Telegram/Resources/icons/menu/read_audio.png create mode 100644 Telegram/Resources/icons/menu/read_audio@2x.png create mode 100644 Telegram/Resources/icons/menu/read_audio@3x.png create mode 100644 Telegram/Resources/icons/menu/read_reactions.png create mode 100644 Telegram/Resources/icons/menu/read_reactions@2x.png create mode 100644 Telegram/Resources/icons/menu/read_reactions@3x.png create mode 100644 Telegram/Resources/icons/menu/read_ticks.png create mode 100644 Telegram/Resources/icons/menu/read_ticks@2x.png create mode 100644 Telegram/Resources/icons/menu/read_ticks@3x.png create mode 100644 Telegram/Resources/icons/menu/reply.png create mode 100644 Telegram/Resources/icons/menu/reply@2x.png create mode 100644 Telegram/Resources/icons/menu/reply@3x.png create mode 100644 Telegram/Resources/icons/menu/report.png create mode 100644 Telegram/Resources/icons/menu/report@2x.png create mode 100644 Telegram/Resources/icons/menu/report@3x.png create mode 100644 Telegram/Resources/icons/menu/reschedule.png create mode 100644 Telegram/Resources/icons/menu/reschedule@2x.png create mode 100644 Telegram/Resources/icons/menu/reschedule@3x.png create mode 100644 Telegram/Resources/icons/menu/restart_bot.png create mode 100644 Telegram/Resources/icons/menu/restart_bot@2x.png create mode 100644 Telegram/Resources/icons/menu/restart_bot@3x.png create mode 100644 Telegram/Resources/icons/menu/retract_vote.png create mode 100644 Telegram/Resources/icons/menu/retract_vote@2x.png create mode 100644 Telegram/Resources/icons/menu/retract_vote@3x.png create mode 100644 Telegram/Resources/icons/menu/save_image.png create mode 100644 Telegram/Resources/icons/menu/save_image@2x.png create mode 100644 Telegram/Resources/icons/menu/save_image@3x.png create mode 100644 Telegram/Resources/icons/menu/search.png create mode 100644 Telegram/Resources/icons/menu/search@2x.png create mode 100644 Telegram/Resources/icons/menu/search@3x.png create mode 100644 Telegram/Resources/icons/menu/select.png create mode 100644 Telegram/Resources/icons/menu/select@2x.png create mode 100644 Telegram/Resources/icons/menu/select@3x.png create mode 100644 Telegram/Resources/icons/menu/send.png create mode 100644 Telegram/Resources/icons/menu/send@2x.png create mode 100644 Telegram/Resources/icons/menu/send@3x.png create mode 100644 Telegram/Resources/icons/menu/share.png create mode 100644 Telegram/Resources/icons/menu/share@2x.png create mode 100644 Telegram/Resources/icons/menu/share@3x.png create mode 100644 Telegram/Resources/icons/menu/show_in_chat.png create mode 100644 Telegram/Resources/icons/menu/show_in_chat@2x.png create mode 100644 Telegram/Resources/icons/menu/show_in_chat@3x.png create mode 100644 Telegram/Resources/icons/menu/show_in_folder.png create mode 100644 Telegram/Resources/icons/menu/show_in_folder@2x.png create mode 100644 Telegram/Resources/icons/menu/show_in_folder@3x.png create mode 100644 Telegram/Resources/icons/menu/stickers.png create mode 100644 Telegram/Resources/icons/menu/stickers@2x.png create mode 100644 Telegram/Resources/icons/menu/stickers@3x.png create mode 100644 Telegram/Resources/icons/menu/stop_poll.png create mode 100644 Telegram/Resources/icons/menu/stop_poll@2x.png create mode 100644 Telegram/Resources/icons/menu/stop_poll@3x.png create mode 100644 Telegram/Resources/icons/menu/unarchive.png create mode 100644 Telegram/Resources/icons/menu/unarchive@2x.png create mode 100644 Telegram/Resources/icons/menu/unarchive@3x.png create mode 100644 Telegram/Resources/icons/menu/unblock.png create mode 100644 Telegram/Resources/icons/menu/unblock@2x.png create mode 100644 Telegram/Resources/icons/menu/unblock@3x.png create mode 100644 Telegram/Resources/icons/menu/unfavorite.png create mode 100644 Telegram/Resources/icons/menu/unfavorite@2x.png create mode 100644 Telegram/Resources/icons/menu/unfavorite@3x.png create mode 100644 Telegram/Resources/icons/menu/unmute.png create mode 100644 Telegram/Resources/icons/menu/unmute@2x.png create mode 100644 Telegram/Resources/icons/menu/unmute@3x.png create mode 100644 Telegram/Resources/icons/menu/unpin.png create mode 100644 Telegram/Resources/icons/menu/unpin@2x.png create mode 100644 Telegram/Resources/icons/menu/unpin@3x.png create mode 100644 Telegram/Resources/icons/menu/unread.png create mode 100644 Telegram/Resources/icons/menu/unread@2x.png create mode 100644 Telegram/Resources/icons/menu/unread@3x.png create mode 100644 Telegram/Resources/icons/menu/view_replies.png create mode 100644 Telegram/Resources/icons/menu/view_replies@2x.png create mode 100644 Telegram/Resources/icons/menu/view_replies@3x.png create mode 100644 Telegram/SourceFiles/ui/menu_icons.style diff --git a/Telegram/Resources/icons/menu/add_account.png b/Telegram/Resources/icons/menu/add_account.png new file mode 100644 index 0000000000000000000000000000000000000000..175540e136fde16e4becc2e0bff9bd8ebbf268cb GIT binary patch literal 852 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDq2jfoY$oi(`m| z;MNdd@1#J9eWyg4rZmq;oT4!Gg1&&g!@*u|#iOAU_5N8{Fj z9KjYn=EbhFSwsbynps>;g0IXxo>#nUahkC~@q>B4?>)D9Uwwc5=b$V0QEOPsrcIls zBGl=jlC&|x-{1dfQKf~9-h=a&lTJVFbXjyY>u-WijoM_-nLcLjjf#_s=*9~{}UXU~@Ebz6P4$YM@+H}~$l_j1ghN6l&2y?gi4piCP%ccqD6 zzkZFBJH*p|SRq7f>fE_=BM-4O>TkI8wyf7pIZ?qnXl2OKptWn(2o%)U|9|?FHKozP z;Q+tlRIi8OKH3I>8X_-r6ob}Z_rAf_oM<8i)GzoXHb6rpz`^AS!_JC|iWenTcJtqV z_+T*obYsHSC{9JGUZ%#)EHgP)Tzvgn+gSgD{GP>&m1k|=v!^HG-Me=kvjQ|^c-THx z%ux{e#k%xt+GcqH*ST}%91vKftWb9?Z~IC0meZ%bHJoIPr1^LC9e=#=(u9*vF%wFy zWP1yC#<(~(w=j!pbRA7nxc_0niW?X8TNod{dc`%9kAn6g^&h8_W@<(Cv$pup^YU}E@Md$>#^!E0aSoQvubysruT457x^Q*YD zw6wZfn%DIE7xRL=O_^-JKK#Dz)HlQG^1cb1SANo->h+`NHjDqu*6My9fqil7+56@y zOioE|by9qC;{A8)x#u1~eth|I@D|Zk(W|dsIH>TYYVYsgzs=u;OV_%_=!xHY^Xyq# zZfPEk0ZUhAUYez;MKt=Vx$gLR|PU#p+LzfVtYneoTO-Gq5v z5<}7kMc*B%XAZXU+1cCYn@AnGCeJCswt4Zjw9SG~Z+_CxGB)~iGpB5CoW5B1kqh-A abxe*g`X6-s{Qnk|qCH*xT-G@yGywn-WN7sO literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/add_account@2x.png b/Telegram/Resources/icons/menu/add_account@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..81583e5c6f16d1e2c4b605f4d45f941c0b961804 GIT binary patch literal 1582 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 V`Pu1Nk(WTp-_zC4Wt~$(69A_lodo~@ literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/admin@2x.png b/Telegram/Resources/icons/menu/admin@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..8baaecb1e7b70d675340ebce2b34714964646126 GIT binary patch literal 1773 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 U_#~}9k^lez07*qoM6N<$f^-bmEdT%j literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/admin_promote.png b/Telegram/Resources/icons/menu/admin_promote.png new file mode 100644 index 0000000000000000000000000000000000000000..ce7a550e62185df77f9df04ec7242a879bd80284 GIT binary patch literal 847 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDq2jfoZ3wi(`m| z;MNdZk5!2xe!5fJR6dB8equMt;$RY%DGDws*kG;tC?VT}FOOHPH9X^#s*KCSNqS8h zGc3v+3j{LF54nnzUi5i<&prP4kGdl-?-|$Jw>)q8yz>6{IiL4QOaJ#^d0olF=Byx4 zurp@!%{On~=GK1TS|7A>&z?PNu4dI|eERpVuDpEv{{8!v8d=}IdGn)Y-}C3`YxvvB zcFXo3=jZ3YnpJ8bvF7^gmTea^TAUPn-41)j&k7F@fBaEm;orLdA3t8q+y41yP1uT) zDZ6&=%-kBq@%z^=FBPHa=;)pqd-vM@h>MH6legVNCFzF+TmSLRH*v^x4xXMmOgAwa@;YtQb>cG?PJutM$m%J`cU=;#{rq z+>K0={l5SFxwEN5Kv=%h&ek^9Y_{L>&(EC}9ANP%=$QZRjZxl$a^8jELgLcbvpCuG$YBTq}zA%#KoWf`c+k|7?8lEqV5#2H0b5m zswGcUvVZD|b+6!%NL<{xG2%?p#tX_o`M*c6ExVj)G;;~NPHEAz-@kv0+VM>}n|9Ih zPI_ND>Ix z;NeckjGZypUY3;T$8mhRGSy2ptK=nPj_i4kXQEq=T$?v<-kPx07c+d825Fo+ew;nd z@0!EL&yi-=+>O$hb~iVu&h>l!wJJ;^)u?T%lcwv^pvt{*oi0s+&ObH&*lX1@9!@RU UvMky#9F&+nUHx3vIVCg!03vN`F8}}l literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/admin_promote@2x.png b/Telegram/Resources/icons/menu/admin_promote@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e91ce7890889dfb83226557a8f06c886834719d5 GIT binary patch literal 1646 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 XV^e!i;ygFl00000NkvXXu0mjfFr<`b literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/all_media.png b/Telegram/Resources/icons/menu/all_media.png new file mode 100644 index 0000000000000000000000000000000000000000..9febf576c86d62400add80348551619a5e2eebd7 GIT binary patch literal 542 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgfti#jAF~maf zZisGQvxCUHJhM_)C9MEk2FsxcBE&3k6 z{yIyAbMDE_r^-D_dfy4AnRhJ;Z?U&u$Gzu7v_#d64U2DPsmNU1v%tE@B6voIP11tS zD<6!$)V{Bj+ftL+Sox|V>>=xPv6LA-^G(hhJMDX3dE?mQn((*gyvnvmdD}Q@L2={h L>gTe~DWM4fpXAJq literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/all_media@2x.png b/Telegram/Resources/icons/menu/all_media@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..b2b3b6ce158e739e42878ce3ec54dce6c23b7759 GIT binary patch literal 802 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@HW6J5LIcBSM{g+=Z+9}h2{QK|N z(~ir7R+jCKT^qJo@AcOzv)Oacr$7FraXZKC`)^yPV}F-j&eWTJxgbHYXLGwuL&H_Q z{!0a)9|X02(CBPv`jD<1xBd3n$&;&3ZwTIfcU^#n!lkcObA8lqDDR!(wKPa;s>`Lf zW$udwU-&IImf>^VaW^k~_0+P1eA}YdmRRvVd|03%*6sf$cK!9qS7Y?1SM6O_=$UUO zz47Ju-%2csLMt+saXK&tbA!q0KS`1 z?}d;#>kWS`ydf})C8YVFLf4wxn$9j~WhSxnGj6e%!@M=hSHYoS>b~dyue0|l?+Kn# z;p1hNbD4?B%uqcgxi4jI!*3no?j4R!TW%=y$af!gI^5_s*Pzbgw_MDlHZf+Q8$Y;e z&Q069+A<1T-n`yZ<3i?!{LZ$ zKDh$k>gVb{xad!NcYK-5R2OEK=RV1g?P6}a&S`IJtmslzaF!@9cRKcBYL17-%3Jb5 zihgE={c)G9lE1Q~a3sH4C$NvJL-yUQLh++7-W-<*nVA3#9uCPvH+D!X?+bjet$Vde z-ad)=KjE3@>Qv?wt7R=-e~BY8$TQ*o*Nq3KixpMCo*%Q~loCIHdMRh|F< literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/all_media@3x.png b/Telegram/Resources/icons/menu/all_media@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..4fa10d48f387ea08bfe45ca05d10eb61de2bb09e GIT binary patch literal 1191 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1SD_us|Wxo#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyz1|Sip>6gA`6MbbHUhz#{1B;uw;_ z`gWGDc3z;!@w=~0RhgMnQxaT^5>?_4IQZ~h37#Q2>nB^=sfNZHX3c#Kl4_rVybOaT zDXF@=Tkp5__x|5={>~9U{n%_f1~jhvG^CDDcBcjz6ci?%TMr zFexdisHi9*VZrX*vlDB6K7Rc8=+UFsu3bBJ?AYzw(Q^)J`1<-z^Wo<1jf1dbbZDH}^{rm5c2Sj*gw$?6?Vy?N=b$R*n zxHyBwJNQ3NZQ)v2`L^SSCwKpxQz_RDYhH5l+_}E9Ol9TerDAE*G@6q{7W(}> zIAe(o>&Iu$mYs6-U8TTt)&2XQKQYq{Od2{=BzxhCq8?B}&>3abj%91|8X)=$w9nevgZT*J_pr%rjT%0GMd?Ay0*w{`70Y2eVl;ozFhg*{eNvJ%&-9sQ|%%AVI%N%-#T zA3t{Zo;`Q&+?g{OvI)U#2HQ7pzT9^F`0+MIp6cpqWv-m<+qZv7JN4i}#qI`AKL3di z({C+baUeP-Cgdp3)(@wd8s?W?$qJKhi66J z@7(gy!qp)D;nSz7vr{u9K79BvVKs-Gq~t*rTjTId%Yt>nFFo|;p7{HBZ)o%M>C;!e zfA#9rvV_x@wuRUmhd;C|XcW#|GQC>J=dbI`w1)-f&Ir%-%s2VE-|dz`{M+dodv%n& zwlV`_Mhizoyu5#-YRC8a#>-Y+RhcjOQu1+LkM6S${m1cJw=EHA2(sk_M&hT-vX6f? z>cvGxT}o7177$=PM>tdV5L@vg0aYt6*~wFk+4cTfv20gfW5HB&v9#k0->=(o35q+v zRy@^sZG7^r&f4`~BUd%ms$V)9Rm7w5b5g_;+sf68vuj^g`xKw5``spPc=d3DGm8@n c{O9(7e|gvkKgAGsS5P70>FVdQ&MBb@08{E1wEzGB literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/archive.png b/Telegram/Resources/icons/menu/archive.png new file mode 100644 index 0000000000000000000000000000000000000000..432bf2f7b59549382eab1e72acae4ae077d5d43d GIT binary patch literal 591 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgfY^SG-V~B;| z*^rH0ha3bt zm>D0NJyeY3`t$u;a&LFK9J=pcX(BcEY??vl_S+vTWLBCaZH!oau_0$?4AbW6*7f`E zuMg3hd@{vuez7G-%I3(}>$~sfZH@Yx5w!Bk*Q(kie>u*mNheh#_g-EeqV=#OdTrS9 z%OBSW%(;@awQ6si-gMp5MWI`AU;eDUb9kzqz!3@lUKa~t+f|d^XP7WWYlx_rHvYQp zVYTeRg9F>=U->`7LHXs`X_K~WxT7)GPo9rGM!V2zi9(=|=dn-5xAL~nKD+Gt>y3PR z9^tD+y?nYH>@L16xn#ndoAGZC`_2Xz&o}8h=1!IS?@zvd-8P|1M5X*!Lru1dlKw9D zqe&md#b3xS{`|9tWqsxL+nwGEEvKLErFMg{vd$@?2>`rT>umr4 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/archive@2x.png b/Telegram/Resources/icons/menu/archive@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..59914bb1704d83d914e872dabb70d8dab716326e GIT binary patch literal 926 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/calendar@2x.png b/Telegram/Resources/icons/menu/calendar@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..c53106f9b982da8327e03ace44a51f4e520a5fc1 GIT binary patch literal 726 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@HoS4D zw0(D8e%bYI_UpeFW<1;1+E;z<`)AwtcaDFyka-m#{G(s^#M2`A?aYmxpSNp>TP&J+ z{&u6oglW2xldMy>WXqimn0fis__( z>&A#23z>Q6)3-&I?PcQ7d2p<1)%DlyhYzk(duQ2j*y+aP2TdN!FE73bw8-$_)1sSi z%bYe|blrb{{n0d|nI9{38h6}%_q6Ebxy;QsL$pNKU)R29Glz}KAwg2!ZNuah+^tNj z?dJNe4Dkxe)#BB8aE7%^=5cj=hUr9)4HagyeU}GEZ8u~PD_~Qxe)O4_wb^mn?DNk< zQmP#aHYs!OQ~Y)B@bk%CIs6=cWhn>ET{`b`#jR7k8|}U|N_YBc|5=ldKfb8^+U!f6 z^_P_M(f_TZ%_MlD)?S;eb}_@`)6YEu>vpHEzRI;db>XpJkNCr%pU$0`<+1I4mQ$9~ zCe9O|UP%QBPx5t`_I&-q#~)9q*vcYIXXu#d~>DH3PTA$=!*f7c)wXX5P5R!pPX(xsJ7W zV88ym@4t^GU3^(`>#f^NtQ(Z3JYD@<);T3K0RSqU BIR5|u literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/calendar@3x.png b/Telegram/Resources/icons/menu/calendar@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..c8557387366c0d56307f32880594754f2cbae3d7 GIT binary patch literal 925 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1SD_us|Wxo#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyz1|Sip>6gA`6MbbAj}&hF{r7?Q#I zHfrxVLr0Nkzgv#@i)g)TWSiI#=C6HGL&b|r{Grv0yNzs}JD7SWdAVf#QF;IS$?Z3L zCf}5O|1RR%kG@0mjE$dLp0`X-@43s#^1@ki0Z#y%2J?SMwtrg3XZS6b?sc=9e?P}; z`DIT@_q2$$VXwbd*~rDOzrM-v-gfcsqkrrEe|^u)xN5sy+u?N(U{cc{m?EfXxLbOt2OY^r!FAa*+5!3Q(jZX~8G?7Z=Pc2>C z^zH`Ry9XlcT5q#_K5NKkE|9%|;Y!xl9d+_90sq_v9*S|cIq0xL+GAIl z(M+Eo2MUaLv{f`QehahFo>1~OWowjS$LF7a9#yI?=9W@8+|jrsXGw|oR1cLIyw@Do zwD^1t6c9_9x8#7A)C>bZ>#0na*QUrv8y4_1ej zp)O$8cQbGMkKzpP2g&)aTxYi3%fIs?)NFa z*F6*t+k8@qT&(E9{CIvbgWl}3T+{Zg*csDTAAEeW$PW+ZXuauwF2t=rzPj$@-Ms1L zx)Yx4Uh?Vqz8Lo-QS$8*_Dyj}kgslF-T1QliHFtk2==7k2b`1KDt4%^{oHHIP`{Kx zim(6c-Py@>IKvAK6pP=eVIN=IDBZy7e12Ro4rAE-Y$sfF{!^jHeoA^VBfEp0AQ} TM@!)xC~J7S`njxgN@xNAVm62Q literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/cancel.png b/Telegram/Resources/icons/menu/cancel.png new file mode 100644 index 0000000000000000000000000000000000000000..f88a31e39c556bce5d177804926015a0f91214d3 GIT binary patch literal 467 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgf%+}MzF~maf z?3BH|Ed~Ouma`mEbVMDT9Jp1cG`Wb1G@cMpl$~(-pz8!dWx-FI<&DP_vD5$5k;NePv2?|pt*=EdY zJO7kPvhB;HrJ5`%9IO>n7EHM3vsKnNdh^!a`F$^bDi~h+*8O1V^W~zSk9i+9RoZiJ i_l>&Gt3*rx-u%qzEa4ZlpTkxM6ri52elF{r5}E)Mc&jD= literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/cancel@2x.png b/Telegram/Resources/icons/menu/cancel@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..ae05c193ee193255539304e64ca1c842b6ffa37e GIT binary patch literal 1025 zcmV+c1pfPpP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NFYe_^wR9Fe^n7>XcK@`T9Tkt0m zN>CCW0$#w%5~ximZ-KRy4bV~9+W7`FS{ZDpXz6K5w6Q{s5)$wI$bGe&b zrhwTq-}%0?XJ*gNtmp08E(3p-fmCewLZMKtR?Fq`!NCE)@Z8NEj9~U|eu?S8etuT*=)uf(Xf*bTBTCSX0s;j>FMeG{Jh`qlR48Kv%kN;KOT?G+kbd?xV*fq z*Xy}lE=Y=zAppQkFG!#Y;-gt=wHi54-p9wsPN%cCx97qF3@|S04i$thzIF`GWLxP5 zgF&%av_r$KxZtQH5XOv&^lEP2-rl<1ZYt%p;DWK?h&v<_7POI;`8y%2Sl10ityU{2 z6V(EV#soPM5g2;Co+g=_i{QBt3YF3#u@P$wl22WUOn>Z|GAKW~Q0aO?!gb;(WpW?* z#8}0_I7|zKdbbFfL-szEO=~d^Z4i`Br+=>6hDE@TU;qahpp_d&2)Q6&&2n;bB52B* zwcem4fZ=fHtH?rxks-kVUSnTfK&v$qIUnGM@4DG+iskC+>iPNEH)>uU9UWa?U;AR> z5+g$<($|L;axto$5A$)!jzZtzlz%IT>Cgm_1~X4)Ze%EIS|OJdB8R9|=-qgDcqq7+ zmlx}MN<4$YSggh{CCHHwEkwg$-tqCVfTq)FC}=ehln+Z=7!MMng=iSYV}l`}(P$J3 z`W*1ZB#!)=llY0X{39VQh?>J|i<-@-jLH7S#0C3oh8m5=?d`2O#3e?COry205-KXN zwScUiTQ;r*q)~rguRM<_3qIl2T422;l~7SjhBz~bRnb;1jJ{}?DVl&CV^RqfwP+>o zu}@rKBx#(dATGOg!^iN^<4%nwQ?fSs1jIfjS;rt^`l|=Un1}pi9i>SUjhOU6O)299^DjR(NKB+x*OQdj z*q>uuPKHk34_M;~`d}q_;+OlQW@;UmY;FDpjEhTRR3&nUcMI=3mye#nbkpN5<1}Sf vI{hq+s_cu|YO(#JZS}LTHMpJef6l;fm3+S>+fS=i00000NkvXXu0mjf|I^Lr literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/cancel@3x.png b/Telegram/Resources/icons/menu/cancel@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..151fe55ffc1a52bba307e6b809dccf356f37adc8 GIT binary patch literal 1558 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/clear@3x.png b/Telegram/Resources/icons/menu/clear@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..1271ec8ed1fdd7f88b41f0ccd70c4c3f40b0fcf9 GIT binary patch literal 1645 zcmV-z29o)SP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS=*GWV{RA>e5T3aY(Ul}v zeR+9#ad9C=?7Y6d-rwK<^5qLZlNe{KtE+)Z_6KaHrlw*iqoN-QAssPh3;)-@iXSJ*B`33JSyp zfyY`sJ-y!EUW#gde%{Q?jE7ZRQwa$P6cy-?A3ur<0*|#eHa0suI}})beLWAK=%yMP z8Yn7&{1;q&cz8HP1^WB<@1lD*tif;(a1s<)PfrgV3CkzCabaO0MFn>cr!P7bticGr z2*DIsW@aYKB)YM_zW(6gAVoDbHHDN)bU;{xlarGvs;jH3pr9a@Npxd-d;33s{!n05 zRaK%x!DDc9b2CM?v9V!kY01MUuBn)q7>WvXe0;pPAn;iG^y$;p)l~|ty}g}>PuP^9 zFg9IsA;`M9xrKy;`1|`iI5;3hIyyRn-vcl^J3CI($;rvjpFg?bgC^d-eVdb$v$(iO zUyC9-Jw5$FgMo1d1_ro1U0q#@Fv!o3jg1)^-ot4Ux|J3d7HMf|0$&ja4?RO)Utgg* z?wAjkr>Lk19Wu^bMFc7lCVSf5-F=A3E?h!mVqI z`pJ_gh?w+js7oUyZ*6Tw6c%VxNl6J+5f~UKaG`o^U%!5(YSg0P(@INA5sTGQiC0Rs zynFXft>r?QJ32b38X@%h`g&bm-RIArHLD1jScju7)K&$2{CCX5!-M0;)q+;k4n{^s z$Odr64i66x4i121X=w@l7Tltdk&%^^6>f>Tgo}#{{1CSaX$JxzH`I*a2L|goai9@Z z=nVHrS43oFBo)=x)<%cAq?x=9F;|z;|CWV_GBGhhPdmPY{mr7gQAS1v)uc^bq|&IU zs3@un0S#wfSfwD6c#Dp)uEl#9AsBP(fgT|KU=jRK_gAjaC1kmMkb8{$a zZ_8Y@6O@(a;m z!*9AcHW~2{e>Q~Jjck>=DP1-<;#~Z(Wz&u0S*Zzy1Tp4 zvAhG5bg2U0#o_nSccXno`5$XXiswNOn>4cc3} r+(=25v;)!(NIM|yfV2bu><;_~UzOt9VveMt00000NkvXXu0mjf1=``U literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/collapse.png b/Telegram/Resources/icons/menu/collapse.png new file mode 100644 index 0000000000000000000000000000000000000000..330cedb208073c21809ad6da8253932b647003bc GIT binary patch literal 450 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/colors@3x.png b/Telegram/Resources/icons/menu/colors@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6329caf06e12006ad6212d3ff488f308c3719175 GIT binary patch literal 2388 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/copy@2x.png b/Telegram/Resources/icons/menu/copy@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..5a2828a658fe81210a0265d13ea9d4dd348bf219 GIT binary patch literal 657 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@Htoa8F5oH={P>`ct4;F*8ApRpJWZWVat=IKYO@nB zuDCpZ=FQl$mz-7EyI<{HR~M@rJG1BS8m9j~jcfkZbsbIG8>c`0bgPr%?5T|Av(FY- z*vvow>q*+gdCyxDEB40a--=&<-8lNO;NOo1O8>V-t-YA>#KJGdWfh;R(}^^**&n-( zKQ7!FmDmzx^E2zh#J%U#=N|N2$oFE3-}2z)mrp+b?CClAL7@2@-=#sGPE(o0%DYxe z+*)#A#ssFT&YxuX+LupWbv3K|XwvrEnfG@}H!(6A)P*%4Y`8Z2{Bx!5_rKT7sdEyk z+!@0lev{|T#|j^v%P*%S-ca)J{Ved9ar$eK%C|qaN9=icH_v?fX~q3-%WmgwH!NCL zv^YeI)v-aaV1mwc@5(>Y?^BEx&OMl5e%*KT%_p9|%mPX*oh+ZW#{NBD8q0Ov9#e-ezwLor;JpN(`{W^vh`1xdG{Ku zJ>X`=z3lX%{)<^#vrh4F99E5pz9LlkPS3dY+izRJM?2Rg)qOK=@tmjp?!UX(*V`|? zR^81odEms|IC1{T{N|&cudFiIR2FGZ{L5TBv#{=OoqgGQj)XtwLMLgK{A#@yH)%p? fB6gA`6MbbAj}p6%)47?Q#I zHpn>3S@Jtxk1QQfZI^15{MnRD;n{CbdAn*QvZ<@b5Jt@~!ad_CD+M1a+WG0;Ke zN4+S=PM+GD8k>n8E{iX|eED+a%9Rr*3c5F(KY#vb&A(T#PF>X5e2$x&n`6c0mwyVs z@7cTe?D_MvdqV|l3kp8`_;I7wE7oz__U)o8d3Qa$yL<26x5u8`GYHwp=q|;>&o9o^ z`t)h)>BwHU#c}JS`M$pT^XJ&R_wTDMe_WL3YSq)%kL(^4@n16|FhaWCqu0AVbWr&ot^k;o0XP=un)6%|v`ebBmoZN9b{Ko9r z(z9;7d$(@=m$nld<{wye$M+3TYevS2N!ev(-#&cU5Tln|`R3PaNe2eL3k{hkpE^E2 zb&8Ak-Jd^qgi7-B*Wb(u^7qe4cvfWT?Y4dH$BH>^JNEDYFZ=Pui;iCvdCdQgkNa0BY%O15O+Y0Zq~{f({dR7CUvoD>=WA>;^V!ILEZBxlSq7bl-4rU=!VHl zk{G+zyXuNwo}_!gGiW2j(d&!CR!RJR*l4=7qSrsj>kTjz@8;DXV`BDwT)0y$z>6pS zNOW}c{{OZHOm;?Lr+=Q-Pd5uLSjybrd)Qw(Xw?mW?kH6`PaoH%^Peb-zK-QBlV*P& zwYOHb-@xQpD)V#4qjK`{nv8zu3%Yy0W!yfHm|oa(n(gM>T33h1n*!H{Ek5~x|K81; zGk**Frfl7{>sGH^b#rGY=bgwG-z3ca{QY0~e&Or?Eyct;Lu%`%gpUcHNxGd!lZuOr{q*gOW!Aij tU@m-r`TEr+Rz+W6nujKR0oD+aAKaf*#6_;DciabMKTlUbmvv4FO#n78z+M0V literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/create_poll.png b/Telegram/Resources/icons/menu/create_poll.png new file mode 100644 index 0000000000000000000000000000000000000000..7918de74a3afecaf90106150c064928e54590217 GIT binary patch literal 390 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlfUeeiT~46zV= z8)VJbY{1j2C32)eVv~WQ;l=0;g8^Fo_hb*QjnXZReXM)p$hvvk zf&!C$kIenhTd?Fz<)P@SMn(UNqOH$KEVk%7UYK)x+Ub8cB$j5*Qt_OY`tR(XOA?-% zif2BbNv+T6Ib`tX=!uw4*{`+np`wAVfjoyB-V~eYi5KNO;H|tHd~)Znlv+?2c)I$z JtaD0e0swvPjbQ)) literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/create_poll@2x.png b/Telegram/Resources/icons/menu/create_poll@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..17e5a7d0f3a63760089b7808586bf7791726553e GIT binary patch literal 630 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@H{-3E7YCEz{QVOyC}(b9dz$(}{mRRdw4IC^YrO0imhFx`$?MQ~ zf&Fu$Y3LP89%nNa0awA+I32N1yPP$;JmbolS80Ytep&6^AY1N)xY((jsB+AcXv&)T<^@$K7DPo zLt*58|HCggYJa=mBwAaz|KYyIi>~e`Kd99_Jyt98q&@1Lx8^(MLYd7>EIYnT5uWs0 zY1S!8rL!C{mxR7f;BLI+BkHtNplbHC3#PWMTszlEvoP+vu9PA7T$ri<{A9^zN7Pwz zXPs5M)|bEf>Lr~f6PfuFo>x9;oxiw+m%(mf)>f~by#KwQ2y5MoYCqg~LXx4zDQw~9 zFZzovWNl5FV?O(A)n2>L=L4suu1Vh+Gp+4HO^V37_tOP0PG0u%W5u1fWqafD?dDH^ z)^q$ZP~l7;w&sInyRTYAaiz`6gA`6MbbHUhz;xBq#W5s< z^=;JN^M;NB-`5H`nwUIV9HjX|#j4k3;nD>k=D)}+F`2@()=QBqaFs`h5a-f!;q%Jx zJx`i{_TJ9hPbb>W+nIFs%(-*t-kVqNp3U9ODxbn2>A*ID5k@)8W?a23GPTrd?#~*z zGm9_2sIgo9>;7ei70WKay#Ae;X~p|a=c%O&0|EjxbysMKUzW_Vk!*ERyww}{Qt$JL zm;+}f>(#4GYII$EF=!==ZvC-2^Nbp=W^H|1WGTV3U~SmyIg-V@JekwB-=2MT+2Mx` zE(>$FMkPG-nRVP(YD0m=n~xP9T?);uE6#KO=Tz=5;#zIKH^N=g^robF}{7{F{~Vrs{&@zjd+l z+eGTk_;+l6USzrBPIsMY z@7f65Xx4VRwPAm(;f+(7&m^b5t1_NxxBIJp%fW;Vx8LfCac4MQJE*zq?q~OFGeZ`0 zZ#ZZxASYn5D}UL?3Lih43HfQg@qr0{CYq{MUwZQSCx@0R!|A;Del!8&4p>-OKV`f&bS z=tjTg#fcy~hs4iBC@B-nilFwd4w+{s)YE8p^iG9dx=7rhV|5U*h&Kv58NT{=Il{jS!|waF|cmC>?G1oAJtgboyzM1e>5I7lVXg=Hh+t`P-W{g62*?$i&d2 zt+Rmjuz|;nW}AlmJK&P@tX5gm09x8hp{1#dB7x}4A;plW*9HcC`=n&_- z*pn*pDYNs_exKY~xLGu5eg0b0`)edO-!z;3b(7E!bxx7)qkhXb-^}?JvzK8J%c1wC z-+unAyxPXX@YcNQ&=u8Y;|sEuH}mJROjDkI+R=2T&#J4hs`i>$urwb`+dR`lrJ;QH z-5R@m1)HCfzWFW;c(5i=Xkz1;LW?^`MJ;RuI65x<{#|V~ciN=@A&ZGix7X7Kv! z@87XGooMCfxoY?3dfbT@XMEKrXDOFXeUftGqbaYh827>+7o|C^l5>CpE6fV z8(Wp0IGQiejXu%CEKz z>7Y+s)|s6xDXL331MUm>cB`%0FnOAXM_ACU(`GJ~!JoQ*dU~s`x5d+& zXa4jNnsLBO`{I1(4HCU>hgQVs-QUvd(B_iSet6+FX#pSGoFBh_37xm{T6*dD@#7UX zcJt3imA4;mTrRjW#LHm+{{35pHnVKMefRzMqwBx?zNgsUdGq6$4;#!UUar0CP_c9C z)x&qo)}?H|>7ypxeRP9NR(#0DHNfO!An~QjR`;e-1ZM>2pD3n!MwcDtInz92o`aIG Mr>mdKI;Vst03x($jQ{`u literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/delete@3x.png b/Telegram/Resources/icons/menu/delete@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..daaf32b811a65c30d31cdafdc81a9656f107429d GIT binary patch literal 1229 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1SD_us|Wxo#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyz1|Sip>6gA`6MbbHUhz+&#{;uw;_ z`ZmheTg6eJ)HT*HAkZ<^@KVGD2i`M0qAuV3C8TF{&6N0M++!kk(81!5&ruH-@jnrc ztfG6W@5t>vn!J4Z{PdLU#$+kYHMrzc+1wK@oyX;aGLCkmoFpZZ+=K zt^Lc$AaQ`>q|su5JKWsd<>lqKili(An+^#4x>=yG^ZfbqY@O0PiW^+B4;K~9(2g`Z z#JuigU%=$;+qQ*iO;x%5`t|FxXL*CBH=oiI;Sv@WuC1-jVtJ@=^XAP!W!=OC=?QP| z-@W_x&6_LfYzzrTTq?gNs8u|bi&z^Lyn5AA4v7P+%qEy9mhN5R#dqxG%aw9Ed(+d? zjly=-yh*q|!-pyS+^0{QWG>#=yLYct{;GFom6ZHac^hJ=%`kED7SXAKKb}5ywPm_@@1E3Ai$;faEectu z6U~zorh6wVdYyOLqR&Y))O#~*C3ag+iQyQhdn>^`p$F@!@YX$7k)H zYiy=BHY|pzVmc%7RPpBBH_OgStmQp*c&&t_>s%$v&MP<8S|mGiUB0rWIQ5s;@z17x zdhbK-KYhBis+A=o}NR?z1i8>i&Ube*V@|H zOvzT`mKJgpYl_w1Q2y}ROjlb|zX_MWWlW#XUsYE2?bk1>?pqGrMf2~}B!7IfW#`V$ z`nXoD_ix|ww){I^(Knm@D|3AA+4JZ7`}=>_to`%xW25zrlP5X%c`E<=kq%3uK>EP{ bi;eaMn>0^4YzW;1DoQ+E{an^LB{Ts5uE`?1 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/discussion.png b/Telegram/Resources/icons/menu/discussion.png new file mode 100644 index 0000000000000000000000000000000000000000..2fefee8b9a1ef043073b46df1c0abad543a3b3af GIT binary patch literal 774 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDq2jfvLdL#WBP} z@M?&E$ICzwIU6o(72_mln?cH0S8*oC%%ErdV z&d$!t>el`H=^G>d*6qKU^X&7_+qZAu%yE0RwN-oSsSvHN|Nhy{Kd(O7bNAhK*I)0A zF1jt6<8d5{PFZ@Z>5O_v(J`T)gBe(YV}+G`Q=N_hh9r3IVeQT z>}b0EmhI)khm4+rx!!ZVmd3@z?Af=^Oo~@;`tBCT16d|7w*(Im!KU#qrX&=<9NnqY7sHFu-ZM2>l! z`g>dJmLEwnl$mh&VS`8Pgr`M6&)X+2%rcSMefL~~!GcLA4MMd}_64ofcHs>}%UMSw-k%iIuO~WEZ7>;;*iz7zy(3 zF1b@^Hk-BnxT1@aU>?^}#i?H9Ki3)liFnc{+~Ty*beHDOzjZT8t?sIMO!&xq(bHk~ zu3d`)Ja!34ys+lp?6mN}^CR;wz5bfC@kWBdoVj!F-np}Y>0n%*w66@AJSFieqY39MeFQ<+*<$%(lr>mdKI;Vst02zc* A)Bpeg literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/discussion@2x.png b/Telegram/Resources/icons/menu/discussion@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..495257521c723edf67b8584db045e7c21a538190 GIT binary patch literal 1379 zcmV-p1)TbcP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NG%}GQ-R9Fe^SW75&T@-#@awqrC zoe(DOloA8VKw*F)kuX{RwM|M&3Jwnb@%eaqdR|;y{PX!7 z9UZN&ufM&$nN4oM5Z-HQYR1OKuCA{BReqoa21wuyup5E~1qJo=^gKO1DTg7W0UlPc z)#*#ul)1RLbaZr}yLNVVLf(&$kHf>mv$Hcy)aB)+hldBo!_UtzBqYSz+FFQwd3ovY z?{8>mxVyU(wwoiz$H#APZwvbl-va{!rKP3b-rll|XonUUAccnD0h_Fe-p1c_`N zCOtntZ)|LIb92*a4VEUR#jESL=bv=d!3z~r63*Ou!60S3d}m}#E`ta zJgi${!ICK|DiZ4re}RD)CYZr*fFdCw;o;$dqQQR<8yjoDSQ#1@7sr1U_~AtvE6`Y3 zSuHIsQ8X}1Pfr&pEfvAWU4<9;(q^oztmOGFD=X7BFo*yr^TU^hwUd(*HWf0MnVHc* zo2v#hxqvT6M@Kc9;^Jb0Vk?V@iBW@EpaV1b$q_uNF^!In5^iE*LJeoJ4*cW@9u>)4 zU0rz_#8#__`w9j4DIj=+UwO*R%uE8|L^N*?l;@Re1wWtD@XHX<5s2i56bAW`NOlHsm}hH#e6XMM8LZ zIR7OnDJde|SAT$?eMLq_GQDWZ_V)I+wzf!DSXjuQzaf;Aln^aE?(Xg?x@c)>p};Y( z4h{~AILj0$7BKbX2sy4AS#)&t`}?~ts2YuiuBoYsT%c}=h=|ZYqh292c7cF^01dQp zby!#!=V*h2gW3crtPl#tw7R;A3`yHYHv-wu;^HEaUteGAt!wM+>&XW1@$qp<)u-FL z6o~79si`SuuC1+=B2>PIhlkm+t*uQ3sZ)jBpOY;xkBp2M>!-cF{r>(w#nj&3uG6a$ zEHN>0XJ?0dh~rOEl`9$kZpUOJLm-O${QTbvgA)Fd&dyFweL%RpysVg!sgUzAg5=lT z-Ccr|J$;23)Hm3Rag6hVqP}%^cdL($t&l}1mzS5*=luLUDo$1*6zn2(b#*w2(btug z6FcY=oAnN zmIcB!5P<~R+S*Faz=hy4GBR-K#D}xaH~`z++-z=c{&U79?u4H*l`MW|WV=2-KEUA^ zv9Ylc8c<_jU*E>YMp{}L>T^tumzNikcGT_2TX27cb82pGZhCqe!zr;f=QBGyTWJh% zYcV-FDSP*zt4cQ~9Fr+3D(dz1RTvZESX*1ekBn2rJWl;qGE)ZQtgI~TJ(z-@pAYu5 l=jUhrq~FNz5%@nx;6HFqaFXkPP%r=h002ovPDHLkV1g={Y-9ic literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/discussion@3x.png b/Telegram/Resources/icons/menu/discussion@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..3f6029d1e70aae1c27c4aae645cec8064c957f66 GIT binary patch literal 2148 zcmV-q2%GnbP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS?&PhZ;RA>e5n|EjwO%%Xm@4Z*V zUQiKR@I%F3P_Te#5Jg2)6cq~^jYtr|h80DyAc_@51wm0mtVryNBK9u!-jb;Ke&%%Z z@@{W$Z+Gv`KW_iHyqS4*c6R2yH!pEAidRzJLE79_wV1E>gTfa*s)`sJ9l<$kMnPA+_-TI z7Az=PvZRIV7cX8sc<_K<-}Cb2%c4b#R;pBq9fe<>1`QhI&!69dLuzX3@ZrNBKYnb1 z$i68+WYtK2V(g8_3Pffdk1CZ7NJFp z7PoKTHdW%rjT^&;4db0SlhL?w<8|xSWn^UdGynDL*TRJht>3LPp?|1GjvUDg@fUpc z>eWGm2IbA0*A@3{;+i#Uu3o*`R0^j;g$fnii_jbr5)zm>WfeOI{dw{@|5mk_>~@tZ zRrc@SuVm5WtmB|JC2`oQu#U*|KHM z*}0&sSFawYyi|r$8*k1D%Ze2%5@ASQ`}XbgU~xOq9zA*}e6Mg6Tj^e1zI<7Ynl#B<7>WW+oH)@0>2KG(dGjPP@S8Vp zQ~>W4&R>~-{>n@y*>W{%@{Os~g|)*mc<^Awk?@IdTXuSdBY6U|;~PCnXZlSH!`U?m z0IF84Dw_%}SFW7up{Y7m(}%A*Rnrtl36d$zj~_p(Q4_=Pz9f>h`+Vli8HwzJRi|n? z#*u=E#AISZ=`1mGV0IY!*_=3WB4^AGYS^%$irF@7*r2ey!jWv_lWU?`0?XSk-fq(G$!dH4NFW+G={7I-&K`C*{)qXE9_{D z9XfQ#P!FI_pFXy<;I=`Mk!iC<7AYj|7P%QUGz69#iIo=klm;1q|0!Wb9R4vbdZc>C zj~}-yle3FYOA<%}OK9$&)AN9=B{QUc6WmpFMllbXTzC5tc!JJzPe$FZjOL@kuP7qNW=V{0lP-dpFdwR0-iBrhFxM$@rW4IB7FDmowXlpC7&b- zE`_uWpL*cHfmSqO7$c&;aN&Yf1DH#9SE7izRlx&Uq4w?DyJ8v&aiKzms2xyN?b@{~ z6dnO^yLIa(PkLk!O$NaAxSLFyN|_;@~sx>)f^$GPLS#49Pk`B1(k4I4Xlte4ycFUmxwOqrst zRD7cE-o1<4AaK0^A3l624XazXt`}T$@xVi$IddjuNm7sj@7}%J%N6L8tin~UlyYe# z8rwlOamheEpp0$}djPnmn=oO55Mm27NtpW6se78ed-wX|&@*7b zfaS}Vvyb^k$saQX)PhimNUDs7BNc0@4Ks?wTD59reaKP^L6VC@%v7SQPAXwkkq0Gf ziX*9W>PqA^yNB5)MvopXGd4=7+op=@RBnglHfJR-$Gs&62j0?%5hJYgnQpBjv7>6; z$PTQ4DVy20Z5wMz z4f!{D)f~8M)~vxE<}0W^_7Q??9;`#ft9te7s>f)e_l_Mq*s_V-e4SK^aPpAlCCKHW z)D}yO@^qFQ^_Ogh28YN2%Ki19a$gVXQiVrBSL8HvDG8r2kTJe~f*NW+2?1RSiZnU@ z8ld)i+N3hjUZ0000#zFkLorz0a!4u;`si|KlARTuvt@ z%-h*^>-*nLI*dMSF2_Fau{m$(pvh{i*W}tE#&GeCO?j+1b7-jHu{KwY1i?k7%dhW! zY!Nvv@yDT7Cb5UVt`uG0_SVGLT2Exd={Y`Gk=LejxAOe=Jd?MlXVt1i39o;zXRLZ{ z)wO6_?s49JCjCp_|N2HX#LIuIRDNU3<9vC`Pfn)$CccwYnx6R|E#JL(k;3!7GqRv? N@O1TaS?83{1ORN4hvWbN literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/download@2x.png b/Telegram/Resources/icons/menu/download@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..6e489c2164f083e79d3b5421cf1bbfbfe5385351 GIT binary patch literal 660 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@HgtAqRmkMP4%X4lFgz`9CC6KCpRscy@3wG+Op_2tJqR5YS{)itcQ=E2O;jgO7fD zTEvz&78`!8Sf@8#b;Gg3H>t7}#_V=q=Bvx~i*vDl2w8pg@y8YZD^3UKi0wZo&J?S6 zobzRH%H~K%r$)ZzjE+{XuSRNnd{v3q$jACO!1(oqSDqV^WVwDVOsl`PFu=q6*WbtG zYc;2OwI5!1F+)X&^Xik=qCE)$j}>_h$|CAkKoILJj)|4y#AW;G;8as>#vnu8>U1x*v9hy zyz;gz^JCt2VMA6A#viJtPQfZdFH5YJcye7}I`CojPS5tKZ_A=5HHjP*U!gcZYVEb9 zYD@Hkl}%a?KP=k$r*fZw!rsiatP$-0W-|ZzDR9nk*4bqfFY{bGe>Uy$F1>d-(>24i zrk;+Uo_^#@xXv&r<+sYa4zZu@uK&Aa}3t6hKU f2EGXPdj}iy`vjhKR8J{=2ucy2u6{1-oD!M<47UXg literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/download@3x.png b/Telegram/Resources/icons/menu/download@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..638c1624877ee1f95a67512bf7e565a2cde1356d GIT binary patch literal 893 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1SD_us|Wxo#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyz1|Sip>6gA`6MbbHUh!1UbH#W5s< z^=*`Qmy)Bv+lw1*+Z38ASiiFT`_R2;N9pPgrLGS1g4g$yH7XbjAHO-;>t66!=g)T= zoe3(J&v`A?+1$RuRe0vlN3MIs*M@|DJ9<@_?kJ3(^Q7K-zc|>|UI1m;C&5<>s3kdYTU|h+Dte`utG^M$y^bP8!GG?J+x-VzlCTRQHaH z8F$vMvM^jy+@jIwRBjo+qf?(hFnaS%5${zT&Wl!Xsk)e1mw7F{^s?lURMyt0nB3q* zkB1%(+(muIucdB`5ZSu*cJ4OLodylAp$k$a?+J@@u?9vjzr3?lS&(hU3a*yzcg)#; z*8HomDbg+59lLn#`xeFnOB+~1^2H8MJ^!?5(YCnt>^EW)ErdcFTNYnUnt3+OHTQ2_ zyhxjGpy;Ko6AHI?mRQwRCzoW`+Q{8cV!0z^?cw++)~VMlc;%E8y`smCGAO$$GfoQo za4RTKI>G*pY`W6K8}Gm0DcGUP(BR2)>5GP3zxS4h91OnE=DFHZz4xxR`O3^(md)GY zqICQ1w7;rHgl0#Xue~wn_~V&=%j?&RGwFy5bGktig9G0Tiw~!t{Hc2LwW|5xgXhne zbNyHLVw zjveaK=(^C6dpqH2rJul&-hC5{d?%+yT0FDhi=&9nB@8nY8 zZ)C1soc?{?-u}q%$MO`@)6bpxdG`ODnX#)cu9&{6Vby_d%>~bQ#Z5l>q-dw#^2shN`=q^z#ef;@n ziw}?Q^2>_n_!plj{n69blRiUfBF9=@nMVdOc`BB526qcATt2@1%+`L{XZ2OCx$~W! zUvIgY^N)qsz;UX{?6dYRpa1MS$dvT$it+2V6tAmn#h))$Z1g$!D0;0}Uev|Q{H%}G z@wyc4zI%Uhqw}BX^LbM4Ud))na5l|YfZ=EYkDGLyiGZnGzwm;O6=xhCtSvGTFq-Nm zxS(!-Kg*Vd8oVsPkY-tN{q;qeBVn`H7Nu>DWV-UUOj2Q;37eY4y+`*&Hs6%tVS8vQ zxjsNcr2A-xy3KN?#sf(k4>a!SiP3Wxne^l7j^!<6gA`6MbbAj}uITCF7?Q#I z_LlGJLPr^f52p|Jo^bLIGvgAR-=OnE`iDT-HM^!0V%1$!SW_3?*f6DclBjj1=afDB zZO-raD}PrqXZxeVa~C6a6!#aV)&2i}#v(sH{)wxS0}A|*!t&4N=ilpfceA##F)>a) zxg~1ty6dmA%k|FPb6R*I!{pcR&rG2^W6Wlsee~s->RK(4t`e)-{rBqw_Sa88ooXRd z=c)bv9_NapopxSfXKlZoy7^|UqILYS;jEd{ zPrEL@*x}iyRvoy-ni88X$2b^ZO=Z7~nC71s9#UVZ;PakqtmqSmT(88bK0IVUP? z$SGLmG&|gY$?@s;-%l4NZ9e$WCYSA$|JMxb`RC;q9m<`*j7fTp*x`pC78kj$v`gH& z;Fw%hdi2fIZEQ;Xp$b}24*$;YKh&>laZ7#YBaU;g?UZ&V^{PrXu31?5k^N-Kq_T(u zWwsO6CZ2rCWhKSKmcLz^?>CF+fmdIDv9Dq_BB9MWo?t5RIi)NwH&k7154I1H6KknnAq#qEUv~Z zDv@I*&A0k$)*XY&6$cWw-!6>U8uhf{q#G++`{BmJ4=xIs&6pFCP_Q$`VoijO(V-Hn zxm(sn8+;SG|Ke*^p@hvAgSmd<-AAkTwlQn}*xM!@R>2w~_E}4vFG1USuHTjLhpYiV zYwWhwdL>!k3AmGEcE~dzm`zJ-%f<*F3!c0)JMZQd7B3RGS7Rd8d;IZ+2?xR-Y_y&c z{-JNb-*VxYQ*X<5w>mLyQ8@a~yw|-%Nh@zwT;i6DZSoy85}Sb4q9e E0Q7X05&!@I literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/expand.png b/Telegram/Resources/icons/menu/expand.png new file mode 100644 index 0000000000000000000000000000000000000000..e817187b65867d2945d9ac3675be3172b0bc0c08 GIT binary patch literal 450 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgfOvls3F~maf z?i9nWRs(^y&})~%9N)av)mf`!+oI6%eB+jnY+~D@DjBmkZv4PDt?AwWxP-DZdNXSG zyjsdJ`Q)GZ^^XL6f8SX6d2(xF#%;6IZMo8I4{iKUX|OJkInF34?s6+DGHcCR}ebA4-~#Hv&2cl(tUo2Qq?UN$*ublONJ>`8vQ zB#ZS0=Wp@Tc$k>EB!mL^h@i}YK=dK-zzpX z89!QbMfj5K2mgCV7JT?84HIQF^c(MJ1;MRl7yxA@u0^+Q53s`rhwm~*G}MwZ&hH7hKLwv`l9D0x-1b4SW1hQxadg7s$VI9y=+ zd`xw+>->$LbBM9NDH`dG@1dr%eCxlI{A*Ml&BA z?qqCU+bH^}z=DBKzQ*i&yux|)#jRn z&YFJ6!Q<{kPq`J!!TJudGk!4{8UEbYAN^h?qIZMZ#f5+B_G?#fzr8WSR%^+t%wm~z zziG{L*7~gzxqIxuamBvm+`GH)=2;X+Wlo5f<1m?h_E^`tzqJk@_ipdeGUc6PKUpQS z>cq5gkKC-S(*kWJF0h$gf4%jk%p1o>$Hw!a57=jx8El9PVBrA8xTmY1%Q~loCIB}7 B19t!b literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/expand@3x.png b/Telegram/Resources/icons/menu/expand@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..596ac8c3cd876905091c968b02a050fbc093e149 GIT binary patch literal 763 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1SD_us|Wxo#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyz1|Sip>6gA`6MbbHUhz?ACg;uw;_ z`gWH6szVL}$Id=pnd>0%CUsrUbfz3&A% z5@XBLKQB7j;;Cq8z1ezye%a>cyroLhH59lym=-lar~~$*A2j~`t*bYhxg~1t@4tQ< z_s8gc{#j!pCEM@bRcmLqpvp$h{@wKwtF!7!k5;_?dQ0}z`Q+Vqh1x6HZ%*GDe8ypQ z@3n-D5gGIApFP}OD)DyLuDf~dhZ!?3?mC|Bb31BE`|i7b)}n^4(!Fkhi+lu+Ya3kn zl;+(OyFOgCy65Jkgx`Pv{Zu_URhP4^dd=!d8#EIlmZ~OJvuShA7F)xUv;M%1&5{Qy zHqSgLu{rYKj!l6FA~p#gjN5oN&DccrW0cD6T%PNbNEtvx3uGKT3TC-Ye=A@^B>(4Tm4Sx#8kP@Xe{h? zOD|sa=EcF39LcMyo;KO{UTm#6w$Z9|`IX62_IzY$=31ANb0FrXMWf|LL*~VsKQb$C z+Q_naLm}(tO@?g7n?JG{Z+K{bd`A$Yiq6m2TYIg4>Kld|EO9!0%r5z&jPZs*qcr;i zpZ2YM^V{y+ysuSztM;ywJ^I;Z&Xkp5t8ZOfCmcgls|zF0 f=V0mqFV`QYIkWvf?%vxDN|+3uu6{1-oD!Mvf3WGl{P01AjT~S5?>RcB_tiC@O)I|r zf>(W6rk)u096ok~KoQr&bN=63`jH{wTZz?Qn}?5CRxsT2&zQx=3gj3_iKFg+OS#66lY)LN^iQf?d`60jl8lCZ~LlEzL+uP`Oh4)&$ab? z;~r-h&U-PjUFY=gzj9L;PH&Q%_@&6Aui5bdYqjM1UOV=EjO%00O%IJ+zXue`p00i_ I>zopr0D|(j*Z=?k literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/export@2x.png b/Telegram/Resources/icons/menu/export@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..43b2cc3281282436d8bcdf19be92867d51dfdde6 GIT binary patch literal 776 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@H6|OFJy)-;=er*g+J91IdWwUQg5(4q54IA+gtUuct4&3?Ea&=td+~nO z?YCw!eA{oYE0%an{U?G$n~Cie!AR3M$DIEN6^X=yZOAQUe@jZ z{<}7$HOy&_6q5*>f6kVg&KDB}{;lN*N>X9YH%h3y?6*8pMd;-7&okODzx=XObNT5D z@dpzwJSdi@n>{mPaa zyZKgE6@r)RZ<}#t`DM?o_0AGJY#}_coV5YRPArJgi`NtP(%*6P?#-7aEC*vGmbW!H zOFleWU!z~p7XR&J=(;fNZEXiGtBCC6gI#Af|;|MN?A z`wlL?c4kS_xqjDQmu3X546%_rUZUnNDjB@{_S<7ghB*_f7GF#-+%FY7xoZ1u*Tom( zlP7D=KC9HW$!+n(>#vuxDVtpQ?;v+z^0O^}jxAXiqP0YPkI^Un-s8!4da^1`Tv!pU z(5Qaaa?`r}tZ9lBN4)d5MrDQgIIZL1nGnJ@Yx1qU?b?&0Dx-A7-iaOj_S^QUNVGxh z+OUr&56WrIidq|{Au?fw*a3msjS(R`66gA`6MbbAj{?&;zflEL~m za=*8>qkx^TZ_>gg1__CZfjKHm6@Q6qaBSS_ovv7BCMKlgA`qk!v4nSqNm9CllS0!n z4h@MTN)wy}jtE?A_#ymtZ-4o|)ScU_PtNRq@0Zq{T3%LG_U!iDoi}Y=7dmkWFtso! zI-pTAIvl3&Tl4Yb#{`2Lckiw}|BZL?`Sa)7+uOy(#nskq-LT=qzkmNu8$EsbGPA1c z7R%whygZ%cE6bIZ2CZ~GEMsKXe)wV8?$pKqyWf4Rh>D5Ix^evY@oU$@x`X!h>Q407 zvLkHr14DCjajw>?s;VfF>y~B~5q9(KEi7K#5mK2cpuobx=yaft!(#24PfwmaxpL*o z*RQ5_NnzJ6&&ZoSdv;b+#OkYU?d`q3VN=v*vaiz>78dqfE-WcF&GD>M*7WtQ&Q6cs zzRg`4bTDS-uD^f(_PQ-z{W^GWgwD1-dvub`eBQs%P+t;rrOQfWwn{Td3F_M&A z-lON+WSCf6D{HwgCvA3##raE@f@V9FEc5>QuPyuZg$on<(sKDcd7JY~zT9d`-nM!3 zC+Ue{8axHy`M^&$+q2OLQLF)>FX1yM8@DK=ddC}`TFq;1Sk*WIZwfWnt zSF5_rvzFvDGc#vrXXk`m`|$hk&X~NE6qi&7qh5Q_>gsBvI>x(GvQIyKnyMfm;1Mp; zX0?0X1J>xh%_qxv7Oh*iPGbM90~19~O&2=*>-MJo`}Jd(-#@=m);sO??b{YnPKP&G zdKj7hIg!@8Q*y%Y{rj(b{EYhk=8aE=L`R3rs@WeWZN8~f*0%h?B1>cA&mTS<5WZ+< zW%a3QuhGMxU&oHMxm~!v>x1e`sV=1}KYsj}5zj5?lu@6bzuu>4vN``8v6$!&i+Mge z>sI{#aa$y~qHX$gaf>RWnMWp0&SbDUCsF3fUM;cmmz?k5`96b*GeuHYim{87=b+F;O`klg5&wGTCna`!8Qizopr0C@x8s{jB1 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/favorite.png b/Telegram/Resources/icons/menu/favorite.png new file mode 100644 index 0000000000000000000000000000000000000000..0e2fb54639f1d0f5052b4343f7c63ea937bfda67 GIT binary patch literal 668 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/forward@2x.png b/Telegram/Resources/icons/menu/forward@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..70ac7a0ca79ce1332a1dfcbc17c3f20b5d4e1f95 GIT binary patch literal 644 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@HAx#mI90dBHvT3I_Wkbo!1b$6o(gw@)?GMCwrB`a`c=4W)X^ ztYkw&^r$(^JUq4&*BH+@|9rOJ z@|sMw$(~ko%XY@3D;(*){r27W-+TDy?BQ!?KDfK-%Ing5OT$)2zAjqGHpTI2mdK(9 zA1kiCHWglyDb=LdaL1ST%el18K4;5z^RhKJWx6e`Uey>m)vJ|Lim%;mG3)uYD<}TF zvdZ*Oq^=;C1KB2ZI&Htq5hKE7$X zk}_|2jtl!$$0!M3dHwYPOKZcELasBVb=EDGd<#!97B$Eyu%Bp@FMS{!cxx)B^OS8* PK`Fq~)z4*}Q$iB}B^Uky literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/forward@3x.png b/Telegram/Resources/icons/menu/forward@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..2ab9b7f4b1c0acc999f4a3d8bad12e67a65402a7 GIT binary patch literal 750 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 N002ovPDHLkV1k5h8TJ4G literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/gif@3x.png b/Telegram/Resources/icons/menu/gif@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..7ac35154b0cbe64b9ba3e9f9c65d05b4327787b4 GIT binary patch literal 1564 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/info@3x.png b/Telegram/Resources/icons/menu/info@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..4ea4275a5949763d5744a7341387e26d9ee71983 GIT binary patch literal 1660 zcmV-?27~#DP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS==1D|BRA>e5n>$M^OAyC>1iryQ zgDd#J2P$Z6q`^tOqHz5H3YwT0n3(Ao&`A6OCJG9Qf!PfO!3Uy&;sX@)qLJVWMLp+t zcVtdk)4jXXJL`I6Cs?YdyZ-gBo|%4B_2%ScuWS!wdm!5b*&g`a1G&G&G)M&n1x-y& zRaI4`rKM$MWmveqy}i4;yS%(SIy!oKdP;-McgW}+YiMZr5xY7%I%;cc^YZeH?BCwr z&d$y@Ha7l^T_-0e#%7tnSy@>*Iy$wS~Xj=6thy}iA&v$G5gHrubSuLlPQhlhv9$HzA} zHw+uJgl>6xd1GT^b8~Y`OG|!!zD=D0W@Kb!Wo5;Tu*)pd1s<#iAOMF$W}t1fmQ{aI*BET&F}`3e>FGE;QJQFAx+96Bh6t&!S^ zuqYs85(D6YfBPh zks2BzrohHzdwW|#QH--&iEjlO5(<*>+v{557E=HI{@!8D?t|9X*RQXydw>WO{i?76 zG$13nK{W)(@bIuyX3G>p+0yi{*k!2NUCxDBz8ZuDw=|MGFc%qzyD}2rU{rzM$?d?iRO8$vm2=-RV)OL~xmWK7vC@GKBEQ`u|IYZ%hTAh%p7#Lfsh~ z8}mm(1d5^5gN+p>Mc8X^a7-D@uy62V!tc?X|pkV3H<{ z&D4@b6^$zKZz@WPu%~NqEI#O;QfqLGG>>F&e9*GN=gW$cdVn4ugJY_l+tx6x-YQD! zNmv~tf+uMaXP3pVAS+6Wu+=egjRZ`52gn}y@)r>#C8$C;NX+mml0hZc=r<)N^3|49 zQ1a=24=@#IyW~b z`A$qsq`nlAfDSSQpdl3%Nm*r;qYA%aAgWg}n(!NhA_%Q-qs>L^3ay_l7O~6%>mJul8OTu5?$>3oY&-@>JNX&Dav4n9_9sclq zn$Z{)UtJ2Az>vd)4o~-^fXr{-?I5QAy0R`|&83b^$S!x20R&bB z4}GJbC-7Ob4^T%8++6x9hn;2Tv410nuTt{KyN6=5$J5=vG3k|*2|~pFPw*qNe<+CF zG3liL7Z5%eFDF7cnh-h@eY*bwB57phY!766Aln1k9{2^_YJPH7Ag?$80000OQ!6DK;miBrfo{$s@)*`>wr%&I}*5r8PQcsY`TR0+RxG!j?|xui@=d zlJC4<{q^$u!g=jKdf$JT_ps#t_0s#-Ew2~9lk56*UF^NNxDZ#X+GNkg7jw4Xe*E#r zY_T%l{^Q&%Ov^97e4W1Za^}W}GwXiOIG$vvVIsvl{q)lkE903wm%>)JGTVK#RT)*Y_-#@-}Ly&oA^_Qx>4DO2qRfITOo!*v7 zXX;H)Uae5C-@^3c?boUo$D`JU)$N~uy7qbVrrU2dj{bXO($yrpH0bA~UCs6P3KkSt z*dA{`%vd!2bn5>5`(HP?fBLB_#?4l>{dR42QjSDNh?eR^509P4PfS{I{IREs(Ce?e zf>xeMGoJM5^Utci_p-J!na@7^`RAMzNyB3->+j{5r5Z^#D+tX#%hvz2Xy$==hYBos z)U&q!>P%$#SRs>IwDV8jz6y_?PbF5eJZwGtmM;lg&A9mazoYjPHb#W3zS{3J`DDuG nnV+wwM8V+c>gTe~DWM4fn@tuB literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/invite@2x.png b/Telegram/Resources/icons/menu/invite@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..17f87f9f0b442cbd340a38e0519b2ca9747f71b4 GIT binary patch literal 1225 zcmV;)1UCDLP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NGGf6~2R9Fe^SW75vVH7@xlXsCv zBJUV5!9bBD3dy6yz)&I+13Aiok}^PwGQfm^WZ+rKz=%jv+@dHUc_&GEKkxnSUANV~ z`}v=J&ggdbK_JeJmFD*$G6@?WALmr; z?Cfx4MCa}8-P_yy_4P%V$H&K{q$HC&iMVBEW^yz$Gc#UZUaDRw^N)`YLe9?4s$yKD zoSvShZLY4af`fx~NV~eaIP`>s1RbP#6OIE%K-<*R)aVl-d1q&51a59_)(3m&o3*T{ z27iBlvd+)XYr#nW{{FtWxJYtZTADuCrfNn4nwpwm8WPN<<$AZiseVH_9 zMTv=tGOKc#nwm;Vc2r_WqaKhJn)Nt>)6-L0;@)7rs({w%3 zQ^aDo+cPpUm{BQ=j*cRc&_6vradj(UdYX}u5qe7@XyL-c!*NLw?C9u7)~3k|F9%)= z!r*UbXQvh$>wn*6^iE031%pI#axzT&`}?b_tBl4;N#DDMhKAwcVX~qf<2@J}8bY6h z2Ga<7bbo(;N=ga=FpXqoWg$t-rYW?xw(>t=C;%)a>g(&1y5N3A*&ZAmU}LEs1s4|= zCw0`4&DRhywzRY~Ha5PzywK8WwMIrpqHR*qkaA^Z1x0ppazab}zfK()Q%6NbwY9Zj zzz7WuWhJt;zP^ql#?{M8lY&T5E2%L$qO{A(%BriYb8~aU!orjoLydZ;Hgr=3VD$O% z=TWr^DxIw%!EMB0PGtxsj3G5JFi?L#ym2=-Hz+B67+KW=;>(!@DVMLWZ*6UDWo2b{ zcDB}_D8)m@X>M znRh4xRq)u@n1_ecH zmONuAe;5%82rm)sitjxW+bdm|2S1)Dt;QNmedztT0SXHXjnM)K7Z743v29gQI_ nCp6yDjc{kcodI_Sgfj386(bTCmQh!k00000NkvXXu0mjfH7F#j literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/invite@3x.png b/Telegram/Resources/icons/menu/invite@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9fc1e000a3f15b4ddd9d4cac376d6e2705a89d02 GIT binary patch literal 1739 zcmV;+1~mDJP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS>HAzH4RA>e5T1!Y(T@+5u7d{7y z4}4MLz*2mHm;(us60;0(;3#z9APgU%g@{6vL>&mGhA9a`PE<4y5u_&hMA5`T@PUzL zYCa0{t^fc1UD$5-x#!%ykN3!h|J=c4?Y-CgoW1s1Yo9Au^q=kl-2=J@bPwnr(Aoob zc6J(xu+oUH9NUnPkOvPQ+`W4@C@9Fs$H&ppacgU9Wo6~dmoM+$z3b`e+1%WeqqWfa z`1tsbA3y%1_&Yi}dj0yfudlC#+Q6vg=H}Mk-mYlTxy3(!{uCD%GfXUQh<9&hX6BsY ze1o@d-{M8JIC~5VUB7<)=g*%;4f*~1_vg=_hlYmc=jRU&4vgaT_xE4Dde!1=b9Hq^ zNMJNRJUnb@Xuy86wzei3J3Bk4r>DPv|DHj{u&%C-pjisg+S+7SH8yy{W zaB$$19UdOOv$I2!KYsj}lU7?aZ*OnQX^w1>CWms@;eNI9eZE0zV z9*Vw-G_7$sEiDbFDjbi0z{Ziz&mu!7+hbv2;rt@+C@d_DFahx9%^P0Izj&sfSZQgg z;TXX`U>@#2e*7S4h>!#p0vJM?Cl4RfhSBd84J&Z}{{1^yMSQzK12=Epq>*W! z^t>Ew+Aujvh54zeDS8!^B|YSX87hV+Cle(!xQe{%oNh}Doqok#ZH5GNLVnRm{6Bp7K$Ew$wD6PjVyZ9^Dw6CeYLwhM0kah}I94C8`o-VR%;6)zvf=V9`Kt5OLO}!ugB(Pg+@2 zR#u{EVZi?N>zA|}f%XD#XLngynUn(@(c9abpP&Em;X`DA$Z4KGe?BoWA;m<- z7#kZat2EET*w~nquh0xQNCn|>)z{Yx@gc~&ySuPl%2RAcBf|_zFp90wt4L%)OD2NLnTNOf<;$0zo}PqO9dNd@%^p0Y3MD5eXJuufzwP4UB3=FZ z^=o%`cWrI0G!99TP0pMdCWne}Pf7+vC(d+HjvM9?co6^%y?ex4RLWqBM%|}RpA@Lf zzohOQGrt~!95qRT1$EE_T{lbTumhUDy)O9%;5#O@a_ULY0X z(OU@T+qZ8x0O<=FBJ@H4Px~z;B}MKkOvnZWWF*S!+9&FbFDfcRIjEqMxt8F&+qZA? zC~7+MFv$hQGTuNb8s5qA@$u#5Wo$O-s=^FjIpm6gfq@Yb5z^NWI|8;14h|}CFvHUQ z`}d{KYI1TCH-CJMNjxJYLIyVDh*@qKJdv2%~VsEmSx@p^FOswN04vYkUH^SPhZ^TM~@znUC`Lr zD92EJu84FF5g%y*+VSSUm6Ox=?>s6g^zf#qr(eB#g&3xYt1s#v&^@4gK=**|0o?<- h2XqhU9{AsQ;9qU&_DzF52!8+o002ovPDHLkV1oW+D2xCA literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/leave.png b/Telegram/Resources/icons/menu/leave.png new file mode 100644 index 0000000000000000000000000000000000000000..ad79e545800a5fb355a7c809bc27e423373d4226 GIT binary patch literal 555 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgfY^tY=V~B;| z+YrO`2LmLoKAV{Ek;mhR8+*6?folhoHb|(-?)s(7_K|y*#}dJR4F@| zzf_1-kz4XGS4pn_ec5gW!4GfCx+OOiSlCGQW^I*Pu4wymqu7hgk^rTNJ7VEZKQy@p&hcBm{BmcSt%r%!+p^s!#6p)Je^_wf{ln?{*B*b} c&#~$N|J|(n8ad0Cbbunt)78&qol`;+0DwU2HUIzs literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/leave@2x.png b/Telegram/Resources/icons/menu/leave@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..c9678f318ff8614a264a482977af85d0312764b3 GIT binary patch literal 959 zcmV;w13>(VP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NFDM>^@R9Fe^SU*T|Q4}}*@=r!B zHY7TT;SfmJ-jFEy2bZP>F|08Rf`*3n2GPN#t<^0zM^R8Dgaj3gT!ey#)QbLR`hDl) z#`Qh*y?3uYTY65%bAIQ%-~FBY?z{KOWYSMkKvLkBDKNn`UaeMZwOXgAr?~)q{!XWJ zadB~TbJOP+;qTJYQZASK{QUe&|GU1v-rCv{fdnqGv9a;-@j=gol@X7}aY0&x)iQ&@ zP^naAXJ=8Bx3{;~*H^-d3WZ{3W(I?|x3^DDPVnCmjc7EAM*8sZ;PratayeBYv)P=_ z=TQad9aZjda5kGo?RFHOo11%o ze+TF7?JcZr!;*SFmO?%EH>`9z4cRcZQmNEeMyJ!IQYk@By)01_QYw`$mrJkL_v*@I zp->3PMyS(QZmZQoY2RrXlLyn@-QA_;G*&`Dj+)cB2~l(U0YZYD{xI9jWBdL7qoX6( zlki~3LoY8cQ&Urbhxaa-OfD`iK0ZDUN#{|hUa#XRDZ1fwIx!p4btsd`;2d#{cDr4x z)o@MHmIZ^s5D@ zn-CqFaVtd41_+7rEmNsf9*+lh!^~cc!bU7Yr>CbdMPO{O#vo3Ulap6hSETcXISx@2 z8r%DEgo?!?imk7&GeP9G+wE4X)qsbsez{yGPsB)8 z%V5Ln^Z6ha2n1k0B@zj&8BX9b;Eb`nyo?WYXJ=>Rxm-16@P3}3pW`=TWCLyo;KqXU zF;sztg@tc&y1&1N8w;w3GQq6N1{46Dc6N5)RAsZ-$Y*!A+pSisg+c)?2*f$qGige; hq=2M=q`=Q9@DKCJUq9q53;zHB002ovPDHLkV1hZ}t6u;B literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/leave@3x.png b/Telegram/Resources/icons/menu/leave@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..ec56270ebce1c86e8ee3799547ff54d48966258f GIT binary patch literal 1183 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1SD_us|Wxo#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyz1|Sip>6gA`6MbbHUhz{2V2;uw;_ z`gYcSZ)Hc3<7XwePRI~c6v*Y#WI5<1sO0FgxM_u_;L*5%clH9@|Cx82+*%SCv_x2` zsnJ9!YjMO14l~6$t)WQ^)$Y`m?tGeRRPj4G&6s_&@4eY?_L$E%w=Yk#vih=Ec>xN1 zV8mpn{j?c2BK$4&k{{rvOj$jF`h_WjfS z#dr@09z0kO!?5n_zJ2=^FIK+j;`^;(`<5+7zUpajT)zDIn>TA#iWE(8Tl`S-_PclM zWCZ#`ugvZ-J1J>n5OU}K{qoY%nQtF{{rdI6g9p!^J^TCju1|?t%i)JRckVoS(sNdA zeSLjx?c8M^6Sr^MmXR=j-aMs=9S;5ylgrA=R&a+%N$qzKuL)kheEF5vfBx9~w-sNR zU~O-|JnqrQ9o*G(*4Rf~Zfk2hwU6AR)lDUEcMIWm3;HP#qu{jb^GP_9$0a^YH!~4xr-7OXifFn7{Ox`9v&{?aj`6C zW8thtYyb4cr)f0?Iwl1i{P*KW1yG)?d0Wj^-Z!5<37tKoq0O>l%N+@`l~!hE&l-B8 zeoVQz_TkBj8G7gTz4E(%=gyz6UvqMD45nQW;r+Cq_2-|XMR)S{n$G;nv*u)WH&fd+ ze(vy`u7<`CgV|OIO*f}737=dhHN(J+_27{WD>>7qpS?OMtFp4Px?1{v--lOcn>&9$ ze%xHglKk%6^Uub{#xq|03uNmy73+1|_+hzlhV;{$HzV6l{hXAQl+@(bxAFBxDv@+rD?1PK9Z~y-A z;lYSj#|E#1{~p`+hiJK8pBA8bcaolf1tX4|NzOWqK-UA{zJpTUv$@UUvg?fkI2uBw#(U9ok zlbG`^I`P52!*J?V$M{T9|i3H)${ESA6bB7ykOB*e_bX&6b zzT9$bLmPMShnCa9J%x(Lw`JV+dEYes>eZ_;ddGK6UgYQN`%p-nca@E#v%Imax1&+- zy0vR7541%}OyB0ST#j?a_S?6kJxg0{J!5hvmFKr!KAv&o!hJDu@r{qQzwJ|c*C!(< pm&CDf-M!hYw zW^fcRn%Q&t<(?S5gl)IqW-BB=xSqB3-1E=nNhrR&Pm&U(@&>b%}tvqb6lj= zNzwQ6qKhvQ3?%s4XPs_N@zC_z1jk3eLcb|WL zIQjbPtIN7iKmRNcvohqK>)z)RUKdy_IHq2_{Ia8>-t_KGHs{+9Cx&F%=53#C#b7eq z*G9h6MZ!|9KesudP}a0TC3!$H8tsqe!%|w?QU;mKTl1Ky#DoQ(!&A^iQmeHYCf8M zJNGVBM=a4n?}bxu+2*HxGZXgRnEJJ0Y;l z6N?V9m$EiH8ehpV+qwOAZfL0Y(jcRmD)*(nE@s$mJlD^#D{s5^N&X+pWq+_O|M^$TYWXlLPqWB&ziXP*Sn7<8A$XTPtN=)d-M6{tFOP_%qa`}Q?+*n%Phv()h(n z)wwqCX^7TTA2rpe-FNd$q&xz(rWUQfnv~?XJb3$U)f147S@4Pn28)w8VU|-X4(o*r7xNYCQgLY9&)dajXKSgX)oA#4$1eN#NvSjXc^?$(97%l~K22eYmul1{X}#@B z-hBVf-P&~h_0&_*lCF|`?Z+Q~EaR5)5pY=;*7G4 z?u%MmwDV5d=8dk-B3>NoLehISuqcXfT`byv-+S+r(@!_0nSE$deY14;6icq-N8g1y z?Y`S5Q{dp`ulfCVtES!O7Zm*pm)rN;iVU8j4g5LqvsY6QQb>T7%e(N$%EXtMPrdj2-tTVbo%ilJ_fk+E&LBArIRF4aNCezl z#E1jPh>Om5R6RuziN$z3+XM9jS_>iv9(Epi!QCA&7TGd@Sat*;c~ByPh6n&4!4v}| zL@ag?V~YQmMKC4)w+{+wFsD@jkb)xNXMONeJbxsl!AsfNPPdecb}>~pk!RbF=M;dN zY2L;CLAeU@$f|-O?WV_#;4nj$y;12s1$EUbT=~bEA~CLNC2Y((6O#nZE7aeV;Xf)5RKkSdr`*Vbm#-=Wigj`zvoa>Jtt zNl8zAZtn;C_>6Km`Euetv%7^}WNT|{UteFr1?Wo-hx7Wids`}_r@OO`*-=+l*V1xa z>(?sxq?y8LL`7K{%IHIVb+zH6>#&XW_2GB#jEm-viXH@*ZOVx^g+xZy*4H1Zt{{WH zb?+l*`sU{5uEfTINjWM;uv4e@spusFiL^01tTZMg*x%P_I+T6R^+D)eI-Sm7sAP#% z2)n#hQ#sQZ3q=H|670`lQ#`U{7F2W_UV$1F3b zi;*XimXlebOF^y(L?4TlL6n_eTO;zZ`*WS|%@otm1vtv3mxFHK5)V&IY~O*87~<7*t@DqCoD@Vjh<@$i<`&Gl z6u(^Uheqe+IxptE+srF=TLX(77qRBln`}g305G z5NRqK8b@1md-P|fxTTR1lKiIp2TIz>j9cAvYL=}0Xi5l|%e4n2jqL@yDg_)6cmI)p z_d1_{)lt7MR3v0fmijE+wr8OHN(uRdlcklFsNIZ`l7Mf$Hgy&CQ^OMz567p2HD5sk zwuCyAyu8XAv5AQR1N^$m8VRGm>FE%C8)#OpZjK3M_lB&Mxuc9NLv@wMdw`7xG1z-l zlmFeCoy~9EzJY=6AP38ahY#0b7x;@_9hKH+)9wx;HD9jyriNa-R$7}{K~sky1zECN zwh2d-kKi|n+6{gvRHtCPk=MQrI*4+Ni_nF2B-yFgVQoZ%=udlEt|-w(T{LF)l9xP@ zNTfxu4QKQ|0>5_{4^ICV DA)&Cq literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/manage.png b/Telegram/Resources/icons/menu/manage.png new file mode 100644 index 0000000000000000000000000000000000000000..67d20772f0ebb857a736028bcfe8682ce201b249 GIT binary patch literal 517 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgfEZ@_`F~maf zZiwN!CI^Ag0}%|YOQ#7qvv;aaU3i4A-;tGFp~X0$m_f^r!R(d*--6DdTQek9`glC> z-*ocOe?7I?_dUNp+iSjg_vXz$YVp4}hNx?wE;5@f>iTis(LKTPGrm@>&6K)ma5QIH z>L#7X1svc@`q#%F8SZRb`@Ax9mXdnA@VV#3mrX2WnpUkU_)%l$zg)N_ z;7i^9@70>p=iEH9pS`59ems@N?hILYc*} zA8h*9&OUqWdu^Md59ggIiMHQ=@gHTzYsckOW5uN)ehxNM^V%i+|ALQM(`qFr%% n(--zK9qvC{DAU!le#1WoIj+?Vp794WKvCf7>gTe~DWM4fv|+}D literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/manage@2x.png b/Telegram/Resources/icons/menu/manage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..158a8c8a52f5c2b3fa7df50d1f14236ef2cb0393 GIT binary patch literal 630 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@H3TOHZBaO* zM{$j7JDx;@N!bm?m7LmX#aiZ^hIYaE?$0gENye+#Fqs&F%^@_nmy8H zsl^!G4QonVwZy??Q{4LN@4u^_+&7Oo?TH!Jal?~`Rc4<}n-u)^b%x2KtJ741PdhCT zJb7Wo@4x5%_8(_vjeEKzFJt%Jxb@-NvM!1SSw!rOOBeT4bXY7YTCsb-{I7*G7Dk-Q z{2TD+Z|PNj*MinB&VnM$vwkh)SiLYemNB;R2-hEmC-Z&=SXoS*2#Rx0S3j3^P66gA`6MbbAj}{@v5XF(iZa zZIrdQile}{cSpXzdc-U$5_2S^z9C0VO|3~`8C#M}z*m8q#|a&q$7vuAsHv##H~dGpMfGiT5C9u*YsF?kUi z6}4!YYei*cWK2v7kIpyAS=rgyCJSpt7_#MkMD6AJZ#$-#zJLFI)#H;ln6Jq-_AJgY zHZ@IU7c{*ibNG3X$ye`htYO?KDJe(3x3f7MxK*rT#~c3h$B!MmcHQDr%G&XW(fUgN zv14u*9fR%c?YD>XB{cCUD!*%NWXy_cxqkin)O=U+zA?-}~bQc?Y?Lt5>hyyH|Gp`^AfuE7$)& z_i4J?<9F}gUA%ZPLZ_^v;>XXQD?7!+zVF*-r**m0MM)>|<#9uMd;cTz=FhLasqo5u zs@nyv?-w(sJkrq9)6>*knD(GaY~z8&=}af0lj{2ej5g)x=BAciFk){=O-+@Rm8}Rg zepDTh#NNw)_wnP!?Dy^Uwn#1DI>;?5Dmv|;l$4a8zkj7Z|K0;En^JXJpWVGX_tJ{8 zq{ojRdvSa^=J0H0LGhX`Tc(tky}jyQAazJ|rt-F3yI!?uuk>FUbTgulLHI-s&mE;5 zd-l|1WUN@Z@+9Y?{rlr}bSHW|dHC>P(w&<(JFiv+22ON+zq3>J%coDDzJ1%4&QgB7 zx0kmt?8fsM)-Km{c7z*dH~-^K&`pYv59+BX*>f;lsqW&Swr7Co*wZFh{Llw14AcgXP<|i?6eBVAS0}!S@8p- zOIjKvHN*T|h4+!&H>!>AeeXK5!}3|xd2ObXr}rJ$)l_h#tgP(G;i=oduwD~wv6ecp z_1BRjEX5`Y{%txR&(C@J@@027_oXGQdvccS+`CuQ++~SBw}n&$Fhi(K7OVA`{Yb}X z`s+K+kDf_9e_k$sZ6Ax~sU;zzhn#q37jnf;@tnEZ>E6Gamf`XpowrjCK%s)RXG&$;*Ws^9HBpYX%Pc$JjVOrK5{B@r&k-d7^2a{b3IW|ZuW z%XHyAllHm7=3ni>ZMWB+ej0RL_3RWl2h8Sb>V?uDf~qZ#*3xJFmZ1b-Mp#ve#0ByHRVe zLCf9xN!pyK|mr$vp;*K4fi{wQrQOgI~? z?mu6|XyM&F_T^D)r+F>?{BzBvs*;6FMvs;RI7;xfNBq%s=A4@FU%6$`#S8<9BlVM( lxiVNg>31J>a{1BlL*5|3aOIAu6;_})_H^}gS?83{1OVyn{+|E< literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/move_from_menu@2x.png b/Telegram/Resources/icons/menu/move_from_menu@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..13ff7f744f40dad6b6ecb399701595fc73e52537 GIT binary patch literal 999 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 J%Q~loCIBmt1`_}P literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/move_to_menu@2x.png b/Telegram/Resources/icons/menu/move_to_menu@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..67034365995944e87106fa36487705885ea4c7f7 GIT binary patch literal 947 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@H>+);2NM_|X&X;BF^-$cVc+e@tC;dG? zN7I67NgRz0=T+=JO=M=b-1YwMZ-(s==jP1(`Rw-0&vzCtK3sgFVH3{_mtC(*tY)8G zcKx;Mt^C=!X0xwfzkW4q>s`(LwKX+0<>lrxeHyfX|NQY|$Nv5HwzgBxH&;~I%&Xh4 zKb!rrg;ejk^XH!y@7l8`WQIhWz>%j#Grg8pSQPdxbWpgEW7g}YT=?(r=bE~@PYH!9 z4L&{kSYbC`-ML_IoV(J*sI|vZ_b%gdem&GdtPLj=%lW$9v>ec z6|DF}f=8^o_2HN9iR;&|=VfEQymDg4q}0ukY;)$OMwHI+Q|}3QlVM^d!zao9bkX65 z6%`c*v(GjhN+{hKQ!_(fUteW@czAeC*{Ko+bzq1)CV8iAzunm?wsYY|O$%Q4P#wip zKcaa>Ia&`tynQ=*{q@x+%`b4i|NQd^%ZU`DBTFy8?AWMo#<09mLf=)AX|~fs2Z8(d z?nz{nx_HGHIGdOk984+PefN>%hm;OhK~E1(>6Vb06P(PngoDnt&7ZI(S9_wzg}|QV zPoF=3K6{oo`m3(w^TS?CKLJDks`|#0_H7#u1u;+LEx2WS`*V+C=4H9#9-Z%9B#^SYE(5v$jKunRkEcr;oQh@rs&k$=$aK0kzRcI&8pP^wfGH*<&w^71DCL TE^AqXK^ex=)z4*}Q$iB}|CxPx#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS<|4BqaRA>e5T1zN)K^XpBawiEz za)}~xOKwRLS%{@5xkOngtVl{JS;|I~SjaUy3zEdfB@u-M78ZzdSIGVUpZfl$G2fie zIo~(ue8>NvvwG(}Gw(dlJ2UUhyyyJ-Wjuxl3=bF{Fg)-dc)-DGjyX9w+1c4qQBf`~ zE>;_nYWVT-aeREdwzf7qJNxuY0UBNvPqrGtY*dwV-3hL)^IUsF?4-rn9~n9x?7oSY^mCP+7S5w^Cryu7?< zR2F2p!DDD>sHUcdF*G_l+SAkX@bJLsZ7(7qRa8_oH#cLN(AMVW=CBst-`{Da^>TN2 zH#03U#bKwj(bYPGbqFs84ru5xp8ziTJveOOr7&dv@4 z0FZ38o|&16ai{Ix-Q6W8C);XQN&Dd7VC-o$2E@t4#6-(BzRX~zs)vWi-rinBLNrdsXJ=;um=PSAGAWjqm;3nmkfIKSkdTm)k`l$hj*gC$x={Q2I7vzo;|C9afB%b% z3wm>0U0od<9K5`|lrp4&9wDTzu8uwv!c2p#0Vigw`M>>OmTMu1SPgaW%+$-rlOmgt07`m`+%Mq)1}=VI`87u2_MXm<^iC zYI}RTsHo`q`57k82O+3)G;X=c9ybY$t29-zPqx!%gkO54MXfHj7E zEq$w%8VxymBxf+l9UUEVDqF52fEbdsmitipHa0d^X%qAM0*I}zubbPoMKd!qV@q>W zTLEiqV`HPQudlwoo<@V!f-JJq4>35ZF6V!Glcn3#UJ zi6>@(8;(msK|!dX!J`T>;O53jKR>^JA(_MF_T!T|rpadF*5BW6DlRQ8{p@58y@bFG zr>)4y$fTsCyu3Wkk~w0IR5TN=jE`Dey?RQ1@L;a7^nVEIL6K>h0mDEgM)<_=otD&q zKyuWy(q1wHhJpGGD*Qc4f2!Tz-*ql3@j@vi;j+_djv?S zHAYwaBIECs)6-MhJ$jP?&&pqHQc_YLA0PF`$AkyK0Po9CC@P?_4#y3UY+_|{0fxJ) ztBZ*x_8LaO02nzlkpIh(`KTiJWMySx?IN2k6^P7RiP9iKV81#zI9OR(Q5-EqfiUbC j9xyy$c);+04n6P(3Uq0hkN~H#00000NkvXXu0mjfDc*op literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/mute.png b/Telegram/Resources/icons/menu/mute.png new file mode 100644 index 0000000000000000000000000000000000000000..6694f696988bf196060cbfd2ae864fbff69e74e4 GIT binary patch literal 765 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDq2jfhpb7#WBP} z@NTemMwX*U$fN(xkCtDEV%Zwx(KI1~!>noP0XXSXsHJa%}WonaMOOO#5SV zs{&9~u~lr5#taQD703He*2aVz-mtqT_Wj(sb2Dwf&nb>v^S_q0`CyHmzF0TE-IT)* zS(qBz+uLv7zTLd|arFH2+i&J%ZIya^^zp~8qe>NP-oJl;`m{I8>#tQaeah~%ZYVD= z=SbKy;q>X#+%qa{@(d&x7G2bs^7-eV$B&i8x?^Kv{$#mV@4TDGvix%93RNM_0wBtojiIwa&j*k^K1?@8;^5-`nTyXuhor> zi-62M;j2YI9e3hfw{BgT-|wyJH5wvL9M9%W+t}iyxbAG)X8-!@DMmB>ma9$f6uVfd zIrY@jqMzTsxjk!`_BL_xMGoaN>i>*>HGG_O`l-f*u+>Zb`;#}{?D;R;yy{{GFhW;d z)shT9);;t0xZo#I}8-Tn!)&$jJ5urx&LPx#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NGxk*GpR9Fe^SW75vVHEa$Kl9Ez zuOumDLXwGVCNWYbjKoYBkjKbClz}Kwk^$v4AQU3c0g|M|fW*Kn$t#b0Kh`~K|MvO! zIs3>}x6T>tv-bMe`qp>WUi)9`KQ=bjk2M3<4E$gQY;A38YHE6VdJ+;6EDG!H?w*#G z=I`%sk(YVn?Ck8{AD@ehiAuJ+uNId zPLYw3M@L6w&)3`A+vwyUeDgrNzt3tG>RTG&eUlC`Uwfa&kI5J0m4>Sy@>Ljb&`e+B7F0 zAD_+5O=g1xkXKk(7%PK=gQ0YGc1D_631NSKKPM;Wn>lrNcXN!ct}aH$Lu5T<(xb*_ zW@flFVE`Gqq!hBRE(DyUgRb#--xgOrmL$Sfgvp|-ZRwwMzrN}&`b zwxY$wMRM5K*q{ZSob(U^Ak298+S%E0aBxt;kCcIx&r3Q%S%;Nm54SyJx#GDCMHDv zCz+gK*WBDJ&7^5g#)Pm9id9@%TFUVX3JQqO^Yb$mD=+;Of`Wp`0#`IC^|ImK1Sexc zaKaS8oAv$uJ)#hjo0}WbMiDbIG7Rv-w-ioTS41sNcsKbciK9qNObnU{Emc=nGtl<- zHYqDADp;uq`U$~Di__H96k_12;C@JLZEX}ArNc|;!K7?#Y-FV(SVRbJQcl>oBO)Ti z?VAD=6%|qJy}dmS+1J-c%J%klRw^4mt8@w-9UYu%jA^s8vzY0yQyd>3gsrji(1?cc=dfpCm&oPD+@X#)0{>|MhN-t?v9ateSP`0&&tY@1kt$JG5r)57aI)UzZVu3h>$pdiw5tq*vmj1 zwI+Vh{4wci{+bUkEl#RPdYh}N+tV*lU6+@aJv=;A0mNIgoWjGyPft$?c71(a^p(hQ zadA8ksi^Sn{QSJU9UAaVaKb*sFBi5ec{v+!ly7t*oML|oA0&Bnbd)(^gf)Gj(c**y z8iR;^O^K~vLiJ#FVYuPpVbx5nf|7EIii&!8cmPOeXQ#^kE4SzXb8~adNpSWm3u2xQ4-a|vV1sWEr2h{gJz668yEr((b@DJfyiKM_1VJ#o4S3=I4y=vGi`2LA61`~m!B#_$yK Rv4sEt002ovPDHLkV1k{+U$_7O literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/mute@3x.png b/Telegram/Resources/icons/menu/mute@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6be5c9a8c1ea534b5bea44805560008ec9925bec GIT binary patch literal 2127 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 FV1goW;UEA2 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/permissions.png b/Telegram/Resources/icons/menu/permissions.png new file mode 100644 index 0000000000000000000000000000000000000000..6c494262c9a8b934ce7ba6fe0bedbde78944b1ac GIT binary patch literal 740 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 Lu6{1-oD!MD z3T;L!MoHx}%|{U?inyHGPpf>in}6>5y}##up7(v9Ki)sy-<#*_je~%s57lS|mSZcH$K#LU(&{?-=uw4TH09d94 z0BTrky;r9F-_)}V_`hB^7NR^B0RWvkFYH18DA2;6ggtRY*dzGj@?*EWGpGOJ>CtjrEZUpw_=Bvm1PV*gP# z;hY__ApRJZu{P`wxp+#YoMzqO=zbl|O4l4RFsNV)98U4~=kRzu4ksx!H8nl`j#T*M*1*>eJa z91dq>WF*MmnM5X&4UDH4)4T&ii#@&6ssz#*jnL_FDGp^;}9ayH|q1U@pg(t|jkta&mHUfftc&sG|FAa5((= zCrwSC?CbMpv^Y3BTUlAjnwwu4M+DrJ$qEd;>ySufXi(78b5Omsw6uzf3JVL1!CbAQ zeLYrD1Cx`cJNObwKs|ku;hJ^nddk6|67WNm51m4RD`@c6;JTZ&wT(@1?n&)rphzrE zHoCvI=7b#O49Mljhmp}Orz8C@ySlsgZcJ%6Ha2cJO-RekEKQF&b_@(}#Uz6i zkQJ}D+$yb4|3JgoLFXSm!i8F^1PsF19bL<2{_>km@5UFd9?={_)%?UnSd(3T`dSrr zLmw>v=59QlPKOzYbYsiz$Moc%LxYO1c$RIuE2yjtp-|BD+g%KNE*kVUAz$EirMkM> z=0jS$rXvQ93D<@W8h!oZ$#CPGxQRVgtjxbp) zUciG7_P*j0HNwRQYGB}7UtcD_`uF^N#Bft>trd8d*+DD}FSoBwD_5_yV!)#rLf+#bhwku|P;w(cB3K z*hOkJ$h6!oLyGA3i&pU-vYFj4vEM5Yo&gENh~FvdV5l+Xa0#mCz#s?Fu&w=ifl8urUYJX(LY%MOim21ub1<>uz*BtO3$;y_8DL^!;^^pTn#+m>$l@*tr<%x;F5uUpuF(CWoe67<@|ktAUVmX;?%vqiL)5H) E0pz!5s{jB1 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/profile.png b/Telegram/Resources/icons/menu/profile.png new file mode 100644 index 0000000000000000000000000000000000000000..57a0b4f80422537a51d04fdef398a050f57fbb09 GIT binary patch literal 795 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 L^>bP0l+XkKo3!vC literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/qr_code@2x.png b/Telegram/Resources/icons/menu/qr_code@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..019f62ef00bccda37ff9d998f68e2eba49b1a08d GIT binary patch literal 774 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 Hu0mjf%;#|q literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/read@2x.png b/Telegram/Resources/icons/menu/read@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..8dcbaab00b27d3f79380a0e7754db58ed201e9b6 GIT binary patch literal 1552 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 Z`~xrxF0QDFJ^=s#002ovPDHLkV1gqdZI1u| literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/read_audio.png b/Telegram/Resources/icons/menu/read_audio.png new file mode 100644 index 0000000000000000000000000000000000000000..cc19a57215f5fd059807b61a3fcc31244b278317 GIT binary patch literal 527 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgftkToPF~maf z=@i?(rT~#vPR>r=xviX21;Z0^UC#^Y+-!*6uytVyqpoe=uk4VxB%?n?BwK(bi`g)_84vi+~*Undqjz4iQ;lhjm2e~&nTo4Ef+EAy)z4*}Q$iB}FYL>! literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/read_audio@2x.png b/Telegram/Resources/icons/menu/read_audio@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..5b3556a499c52f3a164205e3604d972f5ebeed08 GIT binary patch literal 1123 zcmV-p1f2VcP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NF%}GQ-R9Fe^n9nP1Q547TyB-rM zO3DjGA|{kl7)ySn43q)?fW*L%fdLsQh8P$!Q4$GdA`?+YOeFd76pEPn_1@=M&$7?Y zd+yPFyt-$={_$Pk^*wu^z1G?{5=lPE6-cf?Vprf>IQp!ttmfwC`uh5Uf`T8f4?I6# zpOcf5_4W1T<>i~3n{eduS+%vbZES2jK0f~PeEMv{ zpe;*DNf{d(>+9U2sj0_VzF)`8K-~asl zYz~HOXJ%%ut*x2wzPY)H%e1sKFGi*S05h#1fy&Dy=r|Pn`}@j!czD>_+8We25&?{f znnU#=P3)ApHmj?vA?Pr{P&GjaZSYsJAjikYm1t^eDl`#>)6>&R1+B$Rzz#=4DR{-u zYQ!Dp<~qf7?*0na6V6BAwNoV}CEeZKoW9c1(wOfFiGELz$HZFz1T(G22T^OI1}>dwY9=EH5u#SXgjcDXls(F@Az1hnwh_?W3cknwpxK znHfQ%udJ-hW~H=21<9viV@X8U)zNpSC*DA+8R{G7tp7++QPKSTd}U>&z;nQ>eG%!qr=0) zi;Ihz_2%a0Fh4#%c3LT|I&xwxBOwB#SvCa^jGdjG7RO$lAgN<$Xh@>%<>e(SFKzzD zOdU;4O#+T1bs#iIawQn54rwGRxgsb?`9US537^+ZZ25tvAO%`+aWQ$6!l%?EqoyG!N zNc8Dq66RW{USl?hnM7p0mUu}404%=C*Q@V9Tjo?rzN6TnN~bQSoRErwq{ef4ddek) pa`qqnq~{cu97(P~as_->;5Q+=CZt_%0zd!&002ovPDHLkV1kPg{cHdL literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/read_audio@3x.png b/Telegram/Resources/icons/menu/read_audio@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..64ad08126aebeffcff8958a6d1636cd3db26948e GIT binary patch literal 1657 zcmV-<28Q{GP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS=<4Ht8RA>e5T1zN4ZxnY=LMSOI zEU-Yi#mcQLNE921tlY|)k}TXdBq>=aJF*c;*jU&hmkkyumy%nG+$ns&@0)*5=YMA2 z$Gl_4_j!s z+#pVDZ0!8}ydL(LT9{P$LC~WQSb!U(^+hwR4OdrJj#wTY9Ssf+78Vv_@lcix(H$<) zh+9yAnj-{&qYGj6O+rIM!|Us-n$z|5b$54nN=k};9#Dn}4Ap4p0v+jx`jV!%xA)M{ zkebBv^K*ZHe^^+UF?1Nh93X0Bbcarj!8&23>DBb~G&Uw!ZC@d%;weo{e4+knYmsmXn+Mc^$lHHvX)@+WosZhPESv_ z!Yc(6;LJA=FnDztoSdAQnd$24ii(P&clFC`odg+k@<}A7G-lXp^sMZ4b#*LzdU|?l zYil#W3Ei>%4V3i9MOza*Sk8`ZR9ls_78MoISWp?0#K0zwPALc|83+&|=;47fi6SEL z`IHv2gp-pKYQ^Nk!^5<+wEuPU*#$afITwh1W+c6j5|GluRFSIxzKPnInrO-xmbJCD zpF&XuCE3{paH#ax+@42kT0X+#HFUdWY!eG^wD9dkQ*5%~n3=a=8 zwbazqjg5`s;$qgWdC3Scddx)T7|xie_QJvfy>wPave(qqgn|0__(*L-Lqlh0XFEGP zy}V>(V8RG6dK43~3=4HG)jl{lpqIwv@$vDjtgQY0eQJ)`f(!#2vAphL1Q%-HZH&P>b8%UfDn z-rn9QNMmDTNJt26p)v@7hG?PmM57S&I(B+`Ds0RW`uh3`3JNYRE(D;juWxpCwzyOa zl!kG~)VSZ!g0#?-USv;h5-YfD_J1xka`Q)}vV zEHE%o{^-@vk`}z9n3|gE?d@gD;K<0x`T4mcLl6KBaTgO+$ZA367)v#1wA4WQTaZky zudk~M@VU7;EGH5iMgXsDB+4?!a3W1D_2)j+ipf<~RjaG3adC099qAQvTrBtU3C0L8 zdK3_{%rU&bqS~mk=%ur=pPwJjB*(_a0s;c4E$Weyk`m>}jkc?0Mu5>%>pN^QHwj)| zUjEJ`*r8XrVXSPasi~n3poBxDU8`(?Z>-S7Oprz5&%MmdOzN1X{Fe(&@HB8VfVsp9 zC+3?=91UPJ8aT|sDH1#A6u!C2VGbUevE#SO%1U--_VDoFLdS1#3=hrlfhjgz6p<4X z6CE8L;o;$b=AhGmRvnmvh5O~6MuKlR6>`HDf69P#&sVjIZ|?bW z9lrVa_-OiuUF&Cm4k5-Qn{P^Pff@u^ubv}*1qc7i2P`)?HzGR`0=ls9V*$Z{30OC6Us1wp}8(u5*|>bA3Nji z0TvAW5K&CFpZBq|RU^U1wIg6hz>a_&0XqW!Tm*gr@f(PSK#p``00000NkvXXu0mjf D=wt9N literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/read_reactions.png b/Telegram/Resources/icons/menu/read_reactions.png new file mode 100644 index 0000000000000000000000000000000000000000..f3a37993578af751ecb167f8528e2d3d2210914d GIT binary patch literal 820 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/read_ticks.png b/Telegram/Resources/icons/menu/read_ticks.png new file mode 100644 index 0000000000000000000000000000000000000000..8eaab34cc67283237f30681b90c14e749e35d6fb GIT binary patch literal 494 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgfEW*>pF~mYJ zIYEMTv7&GMfJCw1)A37 z?^4p!uV21g{rlV7etG*lckc>zU5J=8X;Oxg!@DJ(lN**X)E+!}a^=dEKR-P^9lyWs z=g*&st6I7uqNABjuUxsJu=>TTS4>=T)@42I?d%e}&d;;`{rS0nMux^FsS>k*ms7RF z|NZ?fE-1)2F*_%RWmeI%Gm>?6b(NJr+xg{zGUjGxVzKIK@s5s+FFw7$zdt%EDl8;~ z!FOlH$3+t+OxUvJ%iZ1Ojb%%gElYZJNG~Zdk{;2TCnrl^UvoUPZ_OH>46X@Bmd=YPw6n8YVB8sMyDHD4m4RVz#^f)n-+RY^ O!rIf-&t;ucLK6T`9K`hi literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/read_ticks@2x.png b/Telegram/Resources/icons/menu/read_ticks@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..8345e900944fc92190ae33c6776464b26a89f511 GIT binary patch literal 727 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@HV4IBUzfc8HrMgI<@wKh&p)<2_k7Qu3(aN@(hGPmuw^iBVZ3!< ze};qFfJILSHH%%eEt2`UsLCC-0JyFszRQdZ<@^X z`F`0T)kNyO=C*YmE{n=`_i{VTZ$9XtH$B;y>1deL!hjoDTNTb0ScI$$xzXdWacbN7 z=jKwp9>z0$u4I{-DF@^%efY8BYnALJpXI^5Zp~*oM4~fy#N=&_YBkw>(`WV7Bx9zp z1yb#YAC_3{k2&_RpzEm8l9}h9vo$lWR|<&l+bim_IPlHH(@*nu_CIfRV!Wgy#=ZF_ zk4+=f*>cB~AxyIaG>&Z1nSZ`HXKPgC+OPm2jSDsmI%22uwjWMwKg@V{-|wS0bHpyK zxt=}yEZZy}wZkrr&k`Se{+aNiXlF}2o7@y1wZ^-7+sk&#@&v6E5oVnw-&A77yZGY1 zMIl-r7gX5rUH|@j@9C#Z%uKAa;v0*0^4zm1-oCC?LOGx(D-b-gMvVb zm8?g@Ki+fCjqPmb`pNaP^Ds3s0L^>O(CTC;)vF-PcH;K?@6C6IWc#deQ2={(8LiLI#2xflIaMa%UmW8@1C{cO3`njxgN@xNAO=T$) literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/read_ticks@3x.png b/Telegram/Resources/icons/menu/read_ticks@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..7f64c04a7dcfb4cfdfb01d65a3f1fc711654c52c GIT binary patch literal 1259 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1SD_us|Wxo#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyz1|Sip>6gA`6MbbHUhz!K`|;uw;_ z`ZmH-qdZrp)^}#RQp=(g4o^uhvj_>Xq{OI>DIG>@c{C5XO;O@bO7@t@D%Lh-p^v1P zhKQ5oX&vMH<@^5a{h#;zS9R^7uh%}u$DH4Ju6Ew%InQ_QuYULUtM{K4=0l7R8wwmO z6l4VWIM}gpw=!EtE;=#oWuS_yquie=FOYWpFeN0Yv<0)pthe=rcH~B ziHV7en>J-i#-hJdKF_%N@#9DP{q-|utEGPZ`gMQg|G&LGJy(u|{M*yrefrI}7BQBUm+!9LSUGUJr9vhw1O9}6%2`td_TR@V1X zQc_aEycx;K$!%?IM?&Ndy?ppE@luy*XMewXp~j;K=OjO0-|V5g|NJeF z{(1WOsTD3f`Uf{9b@) zpmgWXEn8Z&yw03&3=Iu^b#T_KS^vV9SKKNoDOsT(ZeCPWv_ihVzTW2e6_(KC($cH9 zZq1r8pLyY%SFgOR-i^eajY)^`Tq2xwuxa%gf8B@FnHt1OWoKo* z&~kW_wTtWJzXuN*W>i;KpF4N%$e)@H*{fHtx+crZ$?bcX;p)ozk@5AbR~~aFPo8XZ zS6)_j=kDFYpI0wvY&>}83{R%(J!50z$^4NqF+M&HA+i!Gs@4`3Ik~xlpPxKAa{G3) z*Y8hepMHG%X7*A-LSli+qP}5U%x(LV{iZc>({@ZW}aaG@a4;t z@RSe^Q;?Bcn3AL~KUuqGO;}i1N9QeR35gZ&UhS5C`0(K;k?FH%bIYz=x$=|2z1z3F z6J=i36&6lRYt0gok@<6X^1_c#PB*O=0VZ~fNp}t&bmV&M@%>Zv*LUyqbaZ;$0@;+} zF3LP9C@Gn8$l}u9BS%;afj(WdXwj6JZ8aewOnW{|bkUqMXU-CXK3+>BBc-PcdQ0TR z#ns=(pEN#p?AWJpx2f-T?zF6wm|nl@z%^elub?8nS;vn3y?p16PAtn6Q4!CdYc4pa zr!Swd|XUytZC*V(bMP7T|4sU^f_S2D%Ctt73$>V vZ`<$lSN>_xzaPr+0$4IJJd4*{Xsl-xG`4xb;Qzc9RM2?3`njxgN@xNATPHdq literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/reply.png b/Telegram/Resources/icons/menu/reply.png new file mode 100644 index 0000000000000000000000000000000000000000..d52ca37e9922feab0c2a8b223157fa310f892f84 GIT binary patch literal 429 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgfOx)AOF~maf zZJ=SFYkAlM5^Q!Of+%OkbuMTF}|z9VqhI=Jl?+l?_@-dTogT ztkX|~$JlwWI|@wbQ1M*%`dFb)1=F=s-P1+4%?@2?%)K4of6k&WQ6lNX;-l|fx)!BG zUMrpZ{`X-6nWZ|XPi@MXm3II8s#Rg3rC0tKa7dg!bZUj|dnMn?(^3z{EZ6(qt{vwn z@SvaP@SaysE9DLyiTdUya$TcK=XBG#!Z~}VB&^|=m?+5hptxR9BJRY#OsPXQEG5cQ yo>ta{#a#bt;+uPW9_PFVmGkPI{!aT>$aLRFVy;9?v@R%O7(8A5T-G@yGywqL^_+zO literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/reply@2x.png b/Telegram/Resources/icons/menu/reply@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9b323de23a735ab7c9d49efd075b983ce1f1ea6f GIT binary patch literal 603 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1SD@HB~K>xqK7!$~_e29E%uO6*<}(l$yG3 z)}Ee_c;|&$Asf$WZ{x>L>hu5oOnY`TidSBxfn@@N(2sPMw!;sLcFsAQHZ@{;?(O)O zi&wpxZM!kgY_{*-xccRa*Usi`zih&LcL~b`UoWNGO0(tF-)|zt>lzr*`~LUeI{9g*_{82GF6TOB7^@z$ zebL08byu@`k3ZJv%8+|-WRL#M)_&&w>N7T9e#wyki1SM#Kd$ZjKS=wC@ErB3Ni2UR3O#yRVI$;!H}AWu(RauFHoj_;e}DhE|B;1So6hM| z;o^ZC<}EPVdi$+XU`X(V2`6gA`6MbbHUhz|`UC;uw;_ z`gVr(`b#wiw<@KB5we<7PGmjGWD__h>X{|F8;}H&eD7m26Pl>0^vh%aAk=dSiRyQ}?yRqQm zn`f13@yjQl{qRqehwbU#=aCnVwMlDAZ>g|3SN!_E)x_Dy%Xa%N4Z8etim51HJ9{(Z zjGIm;P56ASHJyK+y!p=-4hfxCiHFzD|0?&~V)oPJtOtMOtpAXp#dj=mb=c|}OVcY} zjkZbMN0X#tp7Semmrc(#k^1O}SX?H*YcjXI)~0wmEK=uffkoTlhi`Xvuxxt9xUc@RLB6-E y_kkssGb7%8|GoUO=TU)_$tcMJo=6N99*|EH{%*}Vxw#mWHa%VaT-G@yGywqSLR6Fh literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/report.png b/Telegram/Resources/icons/menu/report.png new file mode 100644 index 0000000000000000000000000000000000000000..aed0311c7ee43d93696155c71c12849890c01805 GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgfEYH)$F~maf z>=eViW(NUR@k!PSPmcXy33zZQe8EGFm{#TsOAB5mM|j96cro%8=AL|a;7R9Jhux=_ zc}$q3dEw3c|Mtwr3Pk6*h`w%hk|$^QGl_whe3+Bqe)(rWIkWg9(9YPR2&?LU6} zu_4dlw`JAx%`M6bOBFaudMo`VJ*nDT78@>d^kG3kYdT*cGq*gp=yqGy>Y||RxI$v1{`cR1YwT{PsPRd1Ivwp;n|*s)m~SI* zV~@)^?K$Dn`G;;E*8HzlDfN-{Na2}lGku>{?px8m=Vs2TRY9vFrxm7`g*zTUd|Cpm zeQAoceeq9;W*0$@g}wFb^z>A!W~rMfzjk`G{g!&ubu0O`H6DAye)M{*pa1v9mq-u& jb!R?q-+$}m>-bP0l+XkKB}T{1 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/report@2x.png b/Telegram/Resources/icons/menu/report@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e6e8a7fad2c0c229aaf199da4e93dcb399dd5055 GIT binary patch literal 1059 zcmV+;1l;?HP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NFjY&j7R9Fe^n7>XcK@`T}=0@dW z?EFXI0iaW#!{`I>09s>119n!H(iq>sh7J-FJ3>K1a~o?DZKy;8#OS?0J;`x)8Fpv( za&JtoQ*36=eCPYlo}HaNv#Hcq`^vzdWgwl{ePv~3Yilc)%WZCMa)sya?(Y8no@>9~ ze|UIE%Y;V(d+B$jYi}7`FTbd7BgU6aCBF3dSr`> zi`8niQmHI2FPqfk@%Z-kmS;r6PCjUbLSboX$%H*VKAxVQo}8SJIn$o7zp=5=>2%E7 z9}ET;7ZubGUPp6$0+;nU>;tq*~1+CXIe$-ucTrN+`_*x**m>@^OgW>r2Sd+}nd3Z)bp;B5TBC*CK`P7xjz=<59CV3zr zU1DseqtVF3&9@IZ62hsXGPDOI<-~l02(hU|R6rD?;-=^j%N&O)p`t<_$j}`15>o{N z(x^jejArM35rB50@iMCtDk}CsK%5yuXcy{kw<|F1xOizmDk@&zO=k_3x|mAT@kKj2 zI=Z>Jf#>}E++>UBLym+1RMdh`wlP|W;!Lg^Bd5FT>uX`#-`|g;{g^M6O2uOFV;t90 za^zx;lnFkrXJ=>f9iS5z$=kg7apf=>gDVHh2dcYy|-Zwbp=Mp9{XqN7Pz!b0j>r(;b6|>8~CX6CUzE z*HKy)1TpD>npcSv3@@!?@ed5J9(r(xD&fIiqLC}<)nm21-id$5xSR}~{vUjTyTiAI@14s}PheW~xXU;_GAo__7DiR-VoEKF8`?kpEo=?$ d%lJQM;5V`0^{lo#H+ld7002ovPDHLkV1k`F;939x literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/report@3x.png b/Telegram/Resources/icons/menu/report@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..dcca89785196fd0b5dac62a932b18b2876a26e74 GIT binary patch literal 1663 zcmV-_27vjAP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS==}AOERA>e5n>$M_Nf5`68u&oL zKw%Mlp`wYgn~1RaqKJ`^W@2J$=qE4|KY#`%28x1#u$h726Acs}prC;m2)=z~(2Uf5+O|+WyL3Jv}|m&CR8yrB?PIA0HPN z7n_@#|75STvomY8^l#SJ*H27LY;A4*>vW-rIw0wLVi+_vHO4>dGw1CAV2|V zz|#>JHq+D7udlDau*rjP>{T&(6*=F+|yZe}6wZIyyc+K0Q6XySroB zpeA%{Yirxv+dDfuySlo{%F3eDnPA4p$CsCvqbm5nUs6&sH8sWPx4xUFr>CW*rP0yR zy1Ke}+f<+$l~J)mVFE*#i^uWvw5qCVadFYgVNXh8bHqtpjme6BudFiACnqN>Dk>7gMJNCT zV0c2pbU|iIIz#wf-Q3*t_Vz|F%`e2YNB*H~aAx!^6YF^8Fkh9?s3pxe@ZE1p#OnH0VLn6mu1}x3^{U zuu08TGgQyl8v_^`k`*LF)?#lEw~+dekB<&}c4NV#W6*$%#phSh%y1HtLsSA*SlA$4~nwtogH%63G zZkmW&+}_?wopfc$K*?}`DuhkZ2o}eP-O95t(HK+ve)!hl6n&Xh{Z7?c+voIc3E_g_xARrmMY3e zIm(KXA{+_AddJdkHk$IJ5UCUUfSyBwF91YP9Vu4T{t!xr9#pLhv|aQ3{M=~LbG}S3 z*ipn?vMPUOubA|Ts2(Rm21oXBg z1d2b5B>t~L1CUG%K@MMbWn!Ij%bzT&-0n_g8?yzIrj5BO|#!L1SFa_L8h?|9LXJ<$HM$ut4^BLmCH!n$v z*4EaIjg7!J1d6s-5_ivYQUX(Kf7H-tT60Te{*k@n=tn#&NE!)S-!t(SG~)M6)#6)J za$QF0BKnd0ZNOEMmQm_CxemMU`8h<;?9Be@e!x=Lk8{GGvCuM%@#$#z4G4pA3J@5}0Qr$0pSw;e-l`Y9AP2@)vWSKgfylkhz3;Qhoekc#yv$ zAwt`KdG4kH)u^meUIr?k&-&ay1!R5uZXaTrH_5()J(v1q!nC)u03fjW$9xP=M}c9@ zIY514;N}$|KoxwRNaQHzH;#QOC7-){DEj?8-F=KjxlIs)^eGpoNp=rWYXB2NL4Q!- z-!bVhq0HbXAPkrwCqg)y5IPHep??A*X%yvR3lv+R*aF2C_z%+aj?_WHhu;7I002ov JPDHLkV1lWh{R#j8 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/reschedule.png b/Telegram/Resources/icons/menu/reschedule.png new file mode 100644 index 0000000000000000000000000000000000000000..0d04287389b0feaca61e2b51b37b7ba498ad0bce GIT binary patch literal 653 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgf?7OFnV~B;| z-4N@3M@NaLUEwPCrn)p=nlI3~-9d4`9262Z-{fICoVQ)N*KMxf z^84@O^~5)7$@L#iy8QA>)!upMpC3&!l;FAc+O+M5!0*3x`yLePOh2tXm5WPZir3OJ zX~s_@)?SOz+kQ81;@Rh)gI2!CvhzOm)TrWWR_M~8Ku)s@FH7E*NzZXwc;Hcap@|gh z;;_{lHL6UcdUcdIoK|0DGM3=k^dr2d>12x0?6X(0OlKeSGM~-ct#B=CD?|I?g+6MJ zgM|8zH+ve*_c zxVNAu#i;XVqDNEl@?#V4%kKLmc=bYtiAkMQ&EuS)$0b&UkG+=)_52HYx^{P)myPq0 z%*P)sCVE_0>-s8v`}`8Y{^Nx&3w&PW+0EboS*~-Rrq@y-zE4$qD-^$0{nd{@v3&Pu a_Xq5}CPvjgW?W^Uq~Pi5=d#Wzp$PzJnha+E literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/reschedule@2x.png b/Telegram/Resources/icons/menu/reschedule@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..5984b3582e20b781b28a85e5cdb39cf3c9b6c1e6 GIT binary patch literal 1253 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/restart_bot.png b/Telegram/Resources/icons/menu/restart_bot.png new file mode 100644 index 0000000000000000000000000000000000000000..423e4c5c10aec700afad31a1d6a7311f58fb4465 GIT binary patch literal 718 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/retract_vote@2x.png b/Telegram/Resources/icons/menu/retract_vote@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..2a52169773806c58d787c9d75e7eeb1d541ed850 GIT binary patch literal 1460 zcmV;l1xxygP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NH9!W$&R9Fe^SXn4`T@-%JLu8gQ zQl=sy5|OwtTu740SX?OK0+Bl*G9?!-a3KmINl2y;GDM+d&QLPX^Yr~s_HR4Rd*1gP zzTfZf?>iUoyU$wBTKhTcti9IWMlovGBW>(M@vmj{q=g;+uQ#tH>sE~w|D7Uk-Lnaaz$X1ECSA~_86$+1ZjH04qUtb?_h>C!vDjm<( zj*gBJgwCu+r;hUuy(Scure0h0cnmj!{Ati{!%gc+YB4aioTHj`8XT{OH60Dtu zh6WS@f=o$CK|EMiGcz+pVrgl~QgPfKA0Lx=1_lOlsQE;Ng@wc%zm=7hoN&}qf#B((^AeSHcuH#g_;{qXQW(2_canVFfMo}RcDbUpeo zTU%S47-EHZuSs10B&w>;^N|%W|$r%h#|DnTQW#cLi`(&_4Rdv z#)gJDB^ehL6%j3H(f);3Gdw&@=Mb+wEI&BGQ80fFVS7N(d3kv(N4TX01{g%b!@~nY zBrlx+NiA;0l0-yA5IhU1UbZw29cOKAE%k`O!omV- zKW`608*XZ9VjALT^^bitLT{&A3o^&@+uNJl>F-OiN$TwESerP8e?5hT)5X3sAt9l$v5|H? z!T<$kXJ-f7gxuWRuPsS%_}$O%2mqQqvK0dq;;)^Ygva6!@=pZ#Bk&g{Qr&DD>z6qI O0000Z4Ww literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/retract_vote@3x.png b/Telegram/Resources/icons/menu/retract_vote@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..7c2af35a2f0da8a941303abe435170058d3056f3 GIT binary patch literal 2199 zcmV;I2x#|-P)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS@0ZBwbRA>e5npcPwOAv;SIV&pW zoE0OA0R=@&;F=J{fH`15#Du61zL+q8pooGA#H<(*AH;x)_+So*Ip>_S_kP#Gu})7< zPw&h*p1rc?VYj-w>aVVz4u987ESC9;G6LDMWs72-L2ZW&8S?b$)5C`kXV0EJgLW}Q zw?>Q@@#Dvje}4X2w{9H*AtRc|s0giN$Br4Xm+9@364hT4m^Z4wAuw%J|NFrFqWZ&u zWl8VKG3yi6(xpqYWYNQZ|Ni~$+qVxNKD>Yb{)Gz{PM$n@{P^)}*RGi{Q{QTMRy;1h z-{s4f=g*&Ct5&Vl2cYdiy?XWB^U5yto7d|iWi{s59OjWVYt|YyYOo;JuV4S* z!2`cIFI~FC^iEkMUdM*mw3Mn*qedGyZv6J`n>WIbA3u&BJ=*IcWi@`WX#;b5S*1!9 z&Iuy%hBs%#G*YD)j`tZgU7#KLYa^+gQ zc(D>2hrxgW1GHWuRT9slMT@?C`2uO^(W8ewmJ*vyU=Db7;jOV|0^xpQZNas48^eEG6Oi4yj%12ijCsPOLHJL#Z){rUkm z@y%t+mR+!5!T9mx((uJS$JQ|mMxQTbLY+tj}^@lLd@Eho$1o0 zOGwB(dGfq|{aRvGt5z)}R*+fo;>DR=qehJ?P@sUH?#!7pWoNj&`Dq5!_v_bB0+GiJ zFbLaRzI^$+ckepB&YnFB^Uxx3#g_fyIL)0qw^lQta>a@j5{M%uz#vpJbL{l#)6$XQ zmPw98YNn;78GQOK!G;YRO0!+NcFAI*4OxFEJlcFj6Uem6rjjK~%A%C@fhlB+>w~n3 zBEuNgty{+vlOR*4PTjkAudMNtA3uI9n>YYvQOf$ja^%P%mB_TnVibAStXax7ym8E zE#w;Q-MhD{5no=ue7UQC^ypFOSbY0`CC)1)TgtpDSFW5_(@?{4>N-Mzru!-DpP2Fn zgo}fpy;I++RV!DaMT-`jHf>Taqs599W5bZiU1kC46UdZnXd@_3j2w)O)o&eAuySDN z=`X3X&6 z!sINQ`UM0xGv{+a^)qA^`@m7`$0h9?W^{l5&4f$Y14+sD-ESgazVK?#9IfHu3o(=(dyKx6JVfihONk) z9%EmoOc|}FQptpohO#St`}S3o?ThW(x0g_nE*u9B9+X&bz7C-@N3v$u8MDgeWQN z3NPfal)S1vpp~YU3bLTN-YYjtE4X;2eEIUhPLz#`sJJvFH!7za-Me>JZuriefuRy! zxcdl90EP+iccA3on>TMJavO{vO0`tGcI}H7FG}~WOa_vVO_c1KYA?!sN5EGdPo6w+ z5v0J!nx#vZ7V7B`^`C+U0+796$A>QYX~M<0>F{I7Ss}b?DIY?$QQNwj0xmM5x($^&3yjdN;2zmd{=FzTQyXdEd5?jd4 zLqYKt`GkrckNuPHjreg!IlTGVvu8Y5@}#_>CBMzL0AAb7n#>W%9D&Rc$Q*&p5wIPB Ze*v(lE8rf9-zxwB002ovPDHLkV1m8iHf8_- literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/save_image.png b/Telegram/Resources/icons/menu/save_image.png new file mode 100644 index 0000000000000000000000000000000000000000..820e092500926016fc56ab5e11b815bb5d4eae8e GIT binary patch literal 710 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDq2jfyuzr#WBP} z@NS6rio!sVZ`0h>ju0-qTfBy^maIx$7hb>_n|?{^P` zG?|0hVwU{>|8LtlOTK^ae!M%Fw>H1_b#(Uo(r*t7>P{NX^a)xyrBXugvLIJ$+UCgR zmkk|H+08${H|~9fP1n&!Z_A=JM2dFGh%V*rKKkkF*RRj_YfJSiIqFSs4%M3aB8AW0 zLFUV)9J8rjsaA92^rri;rB3eC_`dOBfklAIR4-e;`-}Lk9|`t_t#19eM*PsjqMc>C z=N{j^Odw$W^~u(I9X;RN%-ekP*yF;*7X>)hi9af_T7EfmZP?=AJ#qSdZFAe+>6C=5 z4Rd^5Vs#^W?X|l7_jAl<2%Y`gDUkU5bLEPJSiR{-lM)RiGDIWn=JRh%mzC^2*5BV> zwO4PVhr=-+zvY)xj4D4IHEfNGi%Z%#!$(bdX^7U<8oT3f0$1LDuPws$;EJgr-`-#+ ziThQ1-Od$Qgsi^$ql3Mf(NB z-t?6Qas?_v4?q7Daq4kVVqA9mY0|_0G23tVMr^;m*ME2V@4s~uY~}ckOa8juzkmN@ z{e=vZg#j7cZyQSLNc%r|`<7S1?>JX%Y|o$HzonPfZR$FzmdKI;Vst0BjI2*Z=?k literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/save_image@2x.png b/Telegram/Resources/icons/menu/save_image@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..44c66941fd3f155a5f3628c7fb8969976951c8d9 GIT binary patch literal 1213 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 Q^8f$<07*qoM6N<$g2zZN@&Et; literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/search.png b/Telegram/Resources/icons/menu/search.png new file mode 100644 index 0000000000000000000000000000000000000000..8dedda843de980f9266adaf9cf836d9fd7c32145 GIT binary patch literal 576 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDlgfY?Y^rV~B;| z-H_c~hXO>V#Ip4E>v4!NMjzBz(ZTi4#UY66Uq|jN3GV$4+z0hHY}m9-B;<&iqhhC^ z{L}^S4m^6=HY5AiU6a1zXFl(2(@jKvZ9i}RIPGPL)#Q^$9)EoO^;d`;Ct%GbWP zNq?5s^wX!GUfQHHYstqPGjA24CWQ-6^vfhwCwm??*rRml#V$UX?xP&e4W~1J?kKVh z`pgt4;&^M@Tiu-!u7L*UqSii3ijUvmp2GCAO7P$Ol_6Zrhi2S+x8wf%$EGJ%?PmPx#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NFpGibPR9Fe^S2;^_Q4meyz6KGa zMg>Kbbb^S5HZh`&Vr^|_C#e5G`~hx_5Rf!!1VvO(1Vu0=E?_4vs2D|YDFg+V#P7hs z@bYqRd>ev%NfF+icjnA_bLZWeXS1b$=?tVZ@SkPCZs2+Cc6)Pkb7Nzp+wCqcF229N zzrDTP-`|f$qXyVaxzyL!&&&{rdW1DESTMSBRMU4{!&Zm?>Z8wL8hKTO^`dXWZ8in_cAE~;! zT76rxc1Y~D*49?KwYN_QwW(^Q2{`#;baa#$ za9Ha-R|TwS;CFX-#Au*Lq6ed*$sIGDAbw4a{>8crsIv%#UKD< znz_2VBHpK`Ck)X7kjR9&fV}XJIa35NYU}9e`2752O+V%dwSu{T)x5sGR#a3N4KDFh zJ}&kS^(3ot^kB>dtcET&Ha7C|@+8~>v!R+IJ(#oHIDa= z&w^wfuwbUcoJsz>kM01SjfuC5>qRznzl@Vx6ubiZ*Q;a%XM#W51&LA7Z*w} zs%K?o#q0HwaejWjzrP=oq!RPn*98Ry+uPfmr(iIck&*G+B2@8;ii$#^5Niqq0!Xt8 z^V>_zA(2RgHTnI13%Z-hhbSp2;cp`-8y_DxNoaw4X=&-v(Glf|$88IE%~0Umd}n6| vnx>|v%vFj)W=zwiGmy@}-_5{3+eXn99<(0P00000NkvXXu0mjfPfY0U literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/search@3x.png b/Telegram/Resources/icons/menu/search@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..fef63044e7984e4b596766cdafad2646bc555dfb GIT binary patch literal 1166 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1SD_us|Wxo#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyz1|Sip>6gA`6MbbAj}{=?J7F(iZa z?JR5WF98B=v2UNOW_8uRX#arKg+*6~MOsiKXUhdAR$UhXX>IOYkt4?r#V06cq-u*P z{W2DrlIple;od%W=EONU*Cs!CqqcjF?ljMHXRJS;^E{X8_v+Q1^Qi|=ph6;B5$D^f zm9@3C_4W1s{{G(H-o?en|26L1yLa#I-H-L9rKN?1AHRNGx@J@L%+pWZ+}-*4`QN{P zzu)^`fCF!;&!*GIyK^ckemr}&Ol7W8?~H^Qfq8G=zD-Y0cU@$*uhmlF<|1{Qmv>*_;3V`D0^mA0HVhDI@dd&6_{pKRZ8|G}~mMz!oO117CLP z>gcdESJ&3wy>%-qD@#jOo@>QI85fV4(*3?0*7x=G-MV$lD|pgcjpRi;7-!!yKH0tQ zp0?W3uU|_gx9sdud^Sn$!OI@iEFP6LCr^47t2z3f5jBrtxq7O)J<~l++_EhGqyuB% z2GP0qBQ#b-&Y13UY`RO>d+9!{?RtrVDxXhn5X;=6;VZ3S>i1~fmd>qVVil7loVS_2 zkXK+(wR`vGk+^&E*?%8CJg`oi^tX7Q7N1C+xPxW+=CEU#J9aId*4W56UzCZP!~4Mg zgodec1;18XK57jNyAkhs=^aS-hnPxCu$m}pIiI;AXy!-#wHyqmjw-$@$YTA;KVjD0ZCBp7P3BvB_EN+5CD+mn z+4G+2?YFhJUmjf79Q~7P**(4D%*>P3RzW|Oi|KCPHE+(IBX5(JMZR8EBd=2;ELmLM z-?0=J(WZG8X?4M_Ny1eJ7vI{s)AHzBV2~vxDf#BD@s21~wU6PSx96i;e{b*6 z2WdZF%xhiq-;zbzJwNzOE%(8Hr=ApdJbn7~?%mjvEP0O~KUP;)|CAPbYW3>XuM+F3 ztED9+S9%#~y?Ag_=yQr||MUe|JW=|nQf$jEr) zb$55)o-292a*Qil~K|`f zh?w`gXTrX?^}Fx-UH_VHk}cWB$PlqojP-MP!>g}V)3mD@8W{E7O?;;Ldv?^Nsw=D# zURFOcH!HK9!K6KZ$G`#xZn!AcirMmck>o&Nb$8l|2)$qLF3VmN5`Cm@=c_C z)h4UVSi!@_eE##Kibln)X7kU#tT&s@C@MSGZ+Y47xoKW&k7{P#=vtIxCcS0aY1QJB zs~xoE%If}hhArfBI{I3DqWuJs{8`IZttz~^GW=yD%jZr0ENidVY*|#WC9a^CW9|Id ioc)zoyLSD1^PRbIkGsrT0hg(u*z$Dsb6Mw<&;$T*g5NCw literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/select@2x.png b/Telegram/Resources/icons/menu/select@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..67ff85b45a9f38fc2e407d4b095e7ac8ad52dd0f GIT binary patch literal 1110 zcmV-c1gZOpP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NFz)3_wR9Fe^n6WQxK@`SOEV8l^ z!XoiU;Pw6jQA-pG1zTFpHmImH3KfklSEExXR0;)^f_4)MTUlZ^#CyN@4#(`w-Mcea z-peM>EpFzXIp_PnduHyLncLCveSK%(YZ>TF9G=N!CMG7v#>PfRN4bM@dwY9#cgOwm z^77%~Au)1TAlyq!OUK8@^?LnhlZ!4Ka1)_n1peOHY<72d_vPiKiHry{&V&%?&*C*? z-QC@VLLr~e_x1Ie(6w5vTrM+4T-eD6*ZBB&Pfw5O_W1a?y}iA)wMFJkd&2g}$jI5* znfdyaN@ah4e`aQ;x3|{?#Yh(pxS3Ia0Ok6JStchZ$${cltJSr&wRAe|gMu5*glITW z0Q$s6`w&dF74GoxaCmq)+O@fr5CRnhz=WDeujc0M?QMO1y|dG6!nxWABpeWt1#HkX z{|(42)_DWa{QSI26KVlOH31Gq0K&$`h9;Sp3y6$$1xjI|i1jr($*0alhClI08IbQy zpmaV#;X81YGI!oYATgVnSsCpE*7OT9X{LaD0B^{ z{C{>NY7GnwoS&bQ@2jgT>&pOK#sNA=o5D{|PmAC4^K;}n)il!SK+VO)g`mB@z77oy znJ$1sA-#~AT@6E~Q;cFtfaw?1M$O5|3EMY`+S}W^zrQyT0Ea>>N-B@hf@C{kLio2W zHN|2vm&>`~N)acB&8S4Gw+j?+an&p=EU;p@QA(kt;?s~JH_Wp9_;XoCee_qOAuSp! zD=RY5PESu=S3Xhc-Pzf3dr_ma7`KCigRZW)w}nE`Aa&8+Epu~o;&gL!<2tRbu1YU= zOH-&Cz@ZQ{NL{XXOZ;aK>-F`ut0{q+n9sgJT+7191hg~_4h{y5l<@f$M!Y#sNeuw%T8COGQ$E`dOOwAEh{CoX z1bA-H`uqDgH#bYA(&FNxwRY<3xsBir8W3%_g+)_)ZSoP+cE=zz{ndkF!b5(09i>SU z7n<}yO}*g+!$<46`Ns`sJ@gO`RKkP3sF6GA)nm2PK&o@H-!VQXL$Ch_?e)V-v&H*S zGqsLOw&L$N6XKH?WeIMuwy@s${Pe`l+AsT%c@0@4kp32im8A_I`6tX~`Jet4juiK8 c{GT)M3!A@}ks|!4CIA2c07*qoM6N<$g6v`d00000 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/select@3x.png b/Telegram/Resources/icons/menu/select@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6974a22fc72f3d7afd9902e72a29867b5181f150 GIT binary patch literal 1616 zcmV-W2Cw;vP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS=x=BPqRA>e5o4qeSOBBZ++{8-= z1&zc@f>7us5`|kxBod88OQF%IBuY`yh(a{}01XKZh2*LwL<9-(l8{iKke_$Ky`O7u z_BT7bvvy`@J-JVI3z=tk&N<)j?97=n=d4U7z0wg#M<5-6bOe5nK;G|W0gwv!($ccBGA!KR-#%)IqW}E- zJU>6*+}!-@>pDF>4eXZvn^jd+BO@bQTU&n{T?itMlI$~a5!BY!&d$z0KR+8W@(7^> zRVZ|oXQ#oknVz10dwcVsi~R$IsCCw)F){Ns*4x`VH#di4P}%6^)IJ&CSg%EiDBF1uAhI%<%B=%F2qWgZ=w?d3odG#_5+q@-kVaWN3b-rincUte)?v92XV5JWssE#@$) zt5dIkO-;?t&W_*w#l^+Iz<|oLN3?-BN>Jt3k5NoV)T7-EXT`jitg_I@#>R?@inP@! z1W<)SzeB=wBHoh8;D1-w*Vi2#9SVf8Zlf0E(jWrB@|P|_3FqoC#CfUq?mC@hR{Z2g|kY?TZA*ksN^RB7A_L@6!$8r!x4uGB>4=} z(h!?_e*$e$7h9*r{YrNbFfHxfz|&RoZ-0(P(n*A{z(kQf832d_4Lp*O}1borKz>qoa6;gM)+a?(RSnzyOT+NP;Rp3TQ7ZEQq7>Gj3yMX2vy2 zicaMiBo_kI00OF8XJ==wjraHWZ_mOiJ<;!rtQ^y-NB}TEa^V3rsui-Fq$^y>{r&x@ zlBWIqtZr^@%FD}D`heuZ11f-3Jw5kZTU%W*8cRz{p2xO-_*szx>Fn$bu>&L#A%Ojz z1DuDHcp}H-7qfK-R?=RCd+6!u+1S_!F(E;c06T&K#H7HP%vp$yIFD4U$a#mWl^{ug zmBgg8mXi+*w`B0tm=(4pND^QrF$0wBn_STazbUL zjFOOu&q{(My+9G0r`^@nCHkDHsVUE6?+?t< zQvA|#_x=6-q7B+1+^nzybrg3WKu&9eCh)nvy^X@n7Ap`NZqP_-g;eeB?JTiyZWdXY zhg1;L4T8hDS!4w^3N+#%>IK0=Lqno4l^!&PUn*{PS%CpCA~v9g1M@sJJ7@-S6G6~6 z@PQ&Sc1x+4raEYfQl7R{CXbjJ2*V=BT*EXJsdu6DR%V=SHGJ zcNg}LzI1jrOuwNwPQsL_zq-1L?U$DqvJ}+O{Xn(uSWB28A2t2upnju4RMr6WlJZ9#;AE=)_E=8{$)=3KW1^v|BpWsb7`ogqTbEWWpV9;|2;* zD1@8nRK_@o zai-+T?mraRCngeh{{@5v^1kw>mN8lgwdR5~`CULC* O0000vMnIUF&jYlZeD_J?QanX^s)>hG=f6ej>-=v8N6-~>O zaW0AoFrIS0eCqq^YFVM(mEqrukT_N>j} zyrkWHe#4-ZQ+#&q-d(&iX7NRi0KMtK8X_rQw*39_g{90w#;)yV&bIsS=buee*t38C z>8GEP&&^vNw9-VX*H--Hfu}{z3oj&XY>3gCT2)u4*7#ekLZS2MquTHHI*&hgRhszz zeZB#6;{iE085JSU2QN#yt{AY)IODW%!r3%iIsSt;C0`U-%{}%)@$B4ozciic-W-M! zJ->hdw*POxr}fOuo1cHy7|l%3xo{_WN>i89iv@-3HeW8jEa7W+Hb~xhgYnnblVWs{v23S9pB`7<*o zkBXSY?^2)LCl+7Km~?W<_18}eEW}y=lwFEXo1n+=Ce@w;l%_mg{an^LB{Ts5SK=;* literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/send@2x.png b/Telegram/Resources/icons/menu/send@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..4edf9a6cb8777bde0f78bbb2c57a52b231efa5f9 GIT binary patch literal 1381 zcmV-r1)BPaP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NG&q+iv{LE*4q2mubb3D1ay58R2zLWXy|LyHeeLP#v9q)L4j$CU%*+fSQCeE6q@)xdAHTi5&C&wV*49=F3k#|uUjcJK-1qnQ z6Hh8CDrsqH2L}f%t^51?+S*zZ6BGHef%Sxh1mgJm`dUp*jr!Bj(8$WlIy*aKY2g5t zm6hr1>r>d@7mSRIUS3{^*YNOgjsqPXox;Mx%gala*2Tp|US6J-mKF#6*P64lv&3I# zXD6>wLqo%gii*3tJC@eT$w_8rCOfITy0Ubpr>7H7SRm|cNhVB9O&c2gyHa0e5Vqz2(6@_&_F}k$0L>x3V zHA$o9=;+wj*M~sG(pp_zjf{+xM*U+%L(%G@^VN> zh?Ev2!W$XsidTYm|I_8|CAyN#$sW~IJ8DaMzFXnOe)#K!-E=W^N2m}ZREG=HMLMN!Yx*GWlPLLdihleG4`#rF=wbjtj z@c8&B07Jk;t}H4lGB-B|46)wU))wJcKt*K8*VmW*pbzET+*}cT2@M+?8(ISf1qE?X zLcx@j92|wOHxb*Azlj|K0|Smhp`;TP6-A;Vs-J;@0hDGOWwuF{jP2o-ot>TQ>+ALO z^vLMK!U8Xhzmq1A=H_O8#AkZ#?d?(h(b@(Z0O$V`1}rTtrBAWKcCD?g+uPeY33zdF z5w(}FqR1$U8?uXqix3eVu?7lQi$cMOV@XL#J3BkMjOIiTot{4{=M~gKw ziYV3F+w0`yL>bFVpce+bBB0ERj*ebiTVrPh32tz3@cSOGYHDhTd+ZD(9hM4YT)R+f z%WE=t?Yg+Q&~lDtGd@0!H&9*`xp#(zg&iIqQa01m(|&$_a`*b~fWOGcV~@YTKb~Ds nwe0ThzJq`Me`etSFa!Srw&`7ljtHsU00000NkvXXu0mjffctjx literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/send@3x.png b/Telegram/Resources/icons/menu/send@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..eba0a1228a3eaa371534e845dc21d5ffb568c7e8 GIT binary patch literal 1976 zcmV;p2S@mcP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS?B1uF+RA>e5T3JX{TNt)1H7!I@ ztdvF-!89ak#)?XaMo_`>L8*LEBOe-&3=1O2GK`QQZBU_TdMLGwR8Uc)6r@3ljBHMt zwX~bny&u=x>T@5@I(s^Hx*T8p&ffpH_Fn(Awu_7N&$$B56>zSAa|N`oz_4M%+}zx> z^EoPqx3~Acefu6heE8SDf7h;EOHWT9HENWj+N;j4xpU{fe*OAyi@z5yUZka^{izRd z+_-UYz{06t7al!&l$@OG>guX)l^lkusHo_d6V}nad-oC&60idu#&D@2F!bfim+a2{ z`}aFLJNXLZ*4EY)D^^HFI>yc5;9$1<=FOXU<=oxfH*enj>eVa0#rXR5>x&jGatsfw zSTT9>WVX1ju1*kod3j}JWxad%jtLmo)YKsA2zti?cojc<_#n*v_U)UWpC6luG_YsS zp6>2$L8AbdE?tU>ieeT=!KY83W?R>#!sF+*|1^5h!G?73D?7gIL49S?c2Ay)g$R6{Ge!Nml!{I@L=7# zb;E}b*JG#-p2o&TR=;@hVjV&R3u;c}`i_ncmdW_`?b~bCtP%8f1Y5RjVZ}&C#+9K- zMJF!l_io&{5gQw8T#-z|)TvY1vFFd9o7H_`#ISYi);Dk7uzbd~wYBr-&zBiz@SbAd zBaRys$m}R+a&mG$e*DNTF}`x;%8VH^n8h><#jFX{gK46F3PR4r)adi)&#Z{?g$ozL z!^3})oAf^-B7$|ax3`-lSSe=g*s+HXAI3n8)d~Fl`}fk)Qfv(+n~~p$#X#5P6DAxxc1%)FXJll^C1|*d_k(PRiScJACMQLA=rh7kYs>C?c#Kp`tTI~(Iv@ly>z;<|eEDhg{g z#7r}D=1fc?mM&e&7ZGV-55g&5)Pu3D#cJsW4Gj$=M~>8^-o*t)k77oal$4}T)Bvsp z3l`}1hZ&7bAX8FOSX6Fq?f?_%hlYx?t*s3Kmw0~zMBT$$CH;;D$MD>ZPwG)pW1F#Y z>M=?%j5L`Z#Weq9tf2*pkB?_gOr}t3@fDj`ckn>y!qf}{1;sEA$67X(+91H;3*JNV ze!qYJUUv+zp~>Plx)@{^p;~~;moHn;YQKOkLr4U`q)odF%^b^@FK=mSVZ8z)JO%^= zXqITnpcu=nT)EPc#>6W~S&~V~ojZ4?O`B$dI)8tEuG}y`(=@KqWWmCP3+wCa#gkD0 zOv;d{O*<=2O-*G5DB(2Os*-r#ym{5t)vSmy>I`HplZUO9m6fa`E-p@`tt!b-F)38A zI!xO0^YhKwQEZTpj}IR>VC77la$;tT11ENaF&Z;FPW%;v?(^r*v)j5cc0Zb8Yh4Kn z<-)>3G-kTx+h!~)E8|sMyLPQ@9w`NqtfbNEKX#fjWr|dW;hUJW-~dTDX7eyft`J>) zNl6I@SRokz1;D9Or$R$R863T$Uy@9!(PH8d(2f?X6pf=g;S~U?IBSeZ2|IS| zkbJ9yFP4@qTV{=YsIMd8uwyvdw6p-xW!tuGgMQQ4&x;m&_3G7@jKA{=A6_AKqJw5@ z@S%fUs8^W0Wa240o)Fj09pV?tr#BMOg2Y^F*;wmgt1CUkO z*5>AB91Ua0fyV6d3 zt^c^U-+zDpxpBnSs9uGR{hJxGOr#bxT+K1_oK!PYl!q;N<&}p8E3Uu3z*?H{waRw- z>C|bW{m0u6D<1kF)9>D}#lv$_!o<{@k3ar7wCVQSt68G)>#x6dS}4$c)M?>_>#wgK zW^vpRqqq6ynfKpcA3M(K8hAHPTtwvP+cNuI`PF@oCoEf}(dh6XZFluz<+*P^ozlRp1>^;NED6`(WJCwH2;OL>U6 z?%0=GZ#KKtdZv$)u~Pw}Rs+~FxEQjA+7 zbOJtAx6GS()BE(M9JR@XR&&pbL_GU!*;jcupXIxHP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NF;z>k7R9Fe^SUX5-K@g1?#UE;= zX$%1yKOl&Rk}eXIR2K3`VS3W8YqK{23M_$jm$5>T)ZjEMnL1frmg;I9x-6coSs zMKLPsd*{8y;ks9oy*IaeH-%1e=bSm2-JO|@!JxnN4Cop7&oYpx)%VTF$mr|qYi(^! zN=n+=+R}{HL*{~nLWXf$fVtdivR_Estg_Wb;O zN=k}Ky7*xvhzw|2T3X7=%8H*{4a3dN4a-nnT^)2#w$|6zb8~amFvf`?L3X=6H8s`e z^O2^#y*-P?5+}c6xKt3p*wNV6r0L}3q`0_PF{x5OQBhHEZ}0T<^y=#B^Yb$cj|?#$ zocz(zQPOmMeO*~usWgO;e{yniLqo&L$_fR8@$&M*31VDbU0vk%`1n{|T`d$t+^M3X zVtad=VvzBZATT#KH^0BXGtbx8SEth{9xj?^T3Xuh@Gw!c0K2=pV`F3J813!tzy7^) za&qJ>5CJI+0*0ohCb^HYPY`BpZH@8)V|I4dX0wU2)YQ~q$%p|R+#-AE2xe-MWIu~&&Zmw7(77W!HH!KLk>Y%5-y}fZF zut2zfEiW(o{eG11`}=$5z-6ejvy*`6Wmq`+l0pXctf8SH0II60j*gCq5eCWzdJuTI z8wEEp0*eg`Pr|Ah&`c&1;mga*kr)(c`sDQVw6U@Ar&G!a(q@Fk;bP&j#RunCne~a1_GfFu~)x1_c5EB4WnO%nWKwOf_(z z`ym-%fU@X$jln!QIZ1+Wi%?K4B!Y-RgR8XJY-Urz#>PfzX=x1kUmu^JpOX|ATK?FO znVI=Dme4!twNT}3DilZ92~7%T0$sVjzFrulJL(zGGoWX{VE6+oDKElV9lO&20000< KMNUMnLSTXlx(x#W literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/share@3x.png b/Telegram/Resources/icons/menu/share@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9877617803704655127353cbcdc3b0114e603c9e GIT binary patch literal 1676 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 Y9o^vDx!}XqxuA68>FVdQ&MBb@0OMOGh5!Hn literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/show_in_chat@2x.png b/Telegram/Resources/icons/menu/show_in_chat@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a4c4bfa6ce982db5edb7129205b2725576393c94 GIT binary patch literal 1338 zcmV-A1;zS_P)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NGq)9|UR9Fe^SXn5&TNFQL%1j~| zN=V6^F~b87io7X9lJY|2l?RC;DN-WCGm=7?k{425%wx!qA!B5o{qL{4oprvm&-Z=* zbI$d@_dXmi*52#4)?VLQYp=ETQ78<51`ilKVDP|y>j5LZk9Tlz2n`Jl2nYaSZ*Om9 zWp#gle|vj-b#=A2wzj&u`tb0ew{jf>qoSf38yk0bcYn$LeSLkwtlHYz$jC??v}+GF zHa5=A&feVIlr=+~32)`)<(Zk8X>*)bAxlh5Y-?*nbU2N#udf>$8)s){h}6^5lZ}my zt*xz>mzS@vuZf8X2R=ABC@Lx%8yn;Hbz53kSTr;=e13ikzkPXmxuT*XI5=49qb)5h z5!veM>Xnrhp&;m%7GNGZ~Txcm6{Xd|nJ zadUGMe&5m2QA$dR8bX&vTwL7x`a0Q!n;0G*u7d)kf>3^Na1eJ}ULIkR2bi0ix3;#D zP3Pz5NHuwpZ!Yo?p&`l6&Q8q?Wl$FvmztUyq}0pH3-EV$caxKog@uJuxdo|`k`fBv z-rk<0qvP*ws;{pnYuek}r37#=Dj^|-#Lmu6SXh{pU|CrifqQ#-m zH8nLA6{xJNB&DLnKHJ{jW-u5X5)#6} z3JMA+OIli5I4&)Nf`Z=P-k%*o4o15cUv_x7UnrumU;u3-KI6FJbmQ*KI z29a-(0VMOM2}FY(L8VS*5E+}4l;r8@DP_vx;UQy1L_|no5Hfdncg97}k%FOD;w;9+ zrQ=~3`A$zyS?s&JyLq;9{ewx3If5OB0*hv)JVEfkxVV^-F)b}kz)_Jub?pNK15v}+ zadmZdssn@+(r9aIi-F)RsYdf7g>i9lksX9CYiDOCG((M!j*h0*F)=amhgt`UJB1=Q zH&@L9%>^cNLU(m_X#&{JztmiD7`y`CkWFa#bSF9E^cX*orqo#W_xH6OXOZ*5adBv9 zNG{BOoB7)T4MP$)p!xavabGC6L?OY$iu{D~^AAT@JcdZy_4T!8SC+Ge@!-$t>1ome zVq|1Q*C9V9CZ@l?pTYzs81l6pUNvpR2!LUVdj>5mER>g*qxVVOK}g}jT2)m=Ll1pb zUtgbm^tE~@qGNY-bol%Ga~7i$;Vr-(iqFr_7$I<&%tH|wJvutdDbaI@ijZi=u*tO@jvv9x!;||LuXl0P0fBC$`t+YybcN07*qoM6N<$f>Aq5i2wiq literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/show_in_chat@3x.png b/Telegram/Resources/icons/menu/show_in_chat@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..04dac196becc0053fc4c4c517f0becd99b345dfa GIT binary patch literal 2091 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/show_in_folder@3x.png b/Telegram/Resources/icons/menu/show_in_folder@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..c957b70d8bb6c556c35d82bebfe0e5decdf233f8 GIT binary patch literal 967 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1SD_us|Wxo#^NA%Cx&(BWL^R}E~ycoX}-P; zT0k}j17mw80}DtA5K93u0|WB{Mh0de%?J`(zyz1|Sip>6gA`6MbbAj}Zs_Ua7?Q#I zHfnE{R-k~{^c8bE5|qmvT?4qeIh$OXRwytAo?*VxwN2m|-xOE!EE)zSIHAjp#4 zDsbeO8cS2xiX-={+4XePi|*JSzq@zV>m0?+#m}D4&Og`pD6*GLKZQZkfo%dKj7o@S z%Q1^y8uaq}@7ZUcncx2U_3PEFt*4%Dx|ws&eC?^anLca*o2EK%{Pp8U$I&FM| z&p+2punhhD^UnM4pVh<9KK}JhbN$#~ zsGIIiS$wggu+VYcA?5PY(xWf@th97~*Vt|1Tzyq*qDR3~4YBSNmI**kILpjq&qM0h zU-y3Hy)mmp8mD&*YxS)Kc02CEnXOKB5Uibl3jlvH6$BIT*=zn zWPK)XM%L@EQ5QToE@XUid_MQ9(8W|8cBaOgIc`bJn^t_BvF%aa;pSQX%Qjuiu(7e3 z;AkVqU#WfK%b_V!a!yjLtUnlC+>9l7o~%{4%q={veqBTB-!1p%mL2a)*V^=6y6Sje zrIyh(H~pTAKWCiXup#*!AFp)q@q&sAE37BW1+p1I1 z32lcJ-K{LHH0W_&FWT9%*^{sSst+SugJ44=L%_P@Lp(N=><0zB`Dm`~QK2Z|o5%lRZyrcutzq%cF8K#c|5n z2hV@MxbwaAeeL_I{F?He&uh*-FW&cj&U^m8-}&>Mf+hs5EZKc`VZe#3ty&_NUOfI7 zp(A!TuiR+no%iLP-=5xj`|WHR^SAZ#84CNS$b63yZoHY(7P0>N>Z@6cFM6Cv-gf=9 zuiE5;2?E`gbI<*(Ip^fhESo48BHew|g;7#nuD_Xwvqh=v_~V0I8F4N9N*&r*oRU8N zG>HB2;>Fr95fvj&!3V;L{SQu@b)E9yw4xDbeCNLRB|Bs0`7O_3F?hiA=hWfuvx9+k%JP*LGdO-uV3~0{!-T2vK-FF~7B;@)1r{kRMq8qEB{y|$ zy16Ex`RuWkiY`lo7AnUu?3jMK)#2u~MHg3`O%r~0>1D~%pv|y8ZWGmINp)6YF%Dc6w=nA>YfwT`_v%&VTFv zm+fZlxOnAtsm!C>Z^ii9B@+!K6i)qm`Y}e2-DL7f138|(aq$`=8=k!^aT2@ZDE9Sd zjmE1A8>1HUd+~xLjj5l0+H5p@dH5lN%2Y2;;l2B}h;_3Xh44yd-F*MO;P%^XCfq+O z+yd;mj^(=a&k+B;;$zm4@?vr{}J4V)|_&4{K&ejB_B2QO8mvv4FO#oifC|v*m literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/stickers@2x.png b/Telegram/Resources/icons/menu/stickers@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..22e686cd6c4c474b0329e89461aef51da8dfb661 GIT binary patch literal 1197 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/stop_poll@2x.png b/Telegram/Resources/icons/menu/stop_poll@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..2c4360511ce89caeb598541c7d4f20ec98011f2b GIT binary patch literal 966 zcmV;%13CPOP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NFFiAu~R9Fe^m_1J_K@^7d=0+qa zC8CKX9S!^ee*uA(#9k<@tZ2l}%8G=g7>*O=46(gh1nIo zn_RZo%$|?;J#%LE%*V#Y`dMe-YZ=&#?4C}i3x&eL!NLCiK5uaD@9)RsG4J7U`0(%$ z89AII+_hS**XzB$zJ3Hes4&1x0u4vtZoRj+*KW7p-`@kmu!u3n1xI%lry)xu5{*XV z?Cfl3XUBw|PN#QwcZ?Aaa`M4*czC$Iy=|I3Jw07rU0q&Yk~vczv7OCk2ZMpx{mEp~ z>2yk^QZkwJgCazQ0cNHbAVB%;!%2$8A~{gp$H&L>^Yc_H<${74#<-|EPyo94+HG(q z+X{Dkdz;B*?54p|TyRtn03*gkdNnt**{s=YZf-hFIDc$7;tq&}1#GBk{uhv0tn&t- ziixe%TUO@UHaC>GipO7f{Qk>QU#QU>H_6DXZeP`C~p zrA+#PPlQ?QkHeGzsJ(^ARN329Hm$|{w05JfNr9CPLj>ItuzI~N)|55Jdb0%4rv_GQ zCUkT9UvuB(a#8obqosT7?vF83*Vf4TL;8Iug5= zmlx|g73djK0XP)G1*z%n88V$>6jK~byVbSA;c z@~fPLVaU|oY$%12n%d7cQ$%L|Xf(2@S1N)+xF9uwJwv9!vM>Jb z-yRByLrKlBKHG69jGhc}y6gA*5?!TIv4p%Lk%B|F;v09eH$k#D0 zCqt+EgLqw7NuGGqKWe7damm)=H^#WQBt}_6H&|O(?_4fDG1Fa`JB`zjS>g0r7*^RA o%bhU$n;*Rvwg$Hr{?8fs17nM?dd&2B?f?J)07*qoM6N<$g5RjKDgXcg literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/stop_poll@3x.png b/Telegram/Resources/icons/menu/stop_poll@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..ef509132bf6396f75a542f5265d6916d4a6387f2 GIT binary patch literal 1461 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 JPDHLkV1k2FlNbO1 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/unarchive@3x.png b/Telegram/Resources/icons/menu/unarchive@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..02e8a3ca73d35c201cdaa2495f36fd61e7d6a6c3 GIT binary patch literal 1366 zcmV-c1*!UpP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*ISe5T3aYCQ4~HdA-5+a ziIn0+l5$CMNtE&^w~$L7$peWz$)k8vB1DmAiHGy%@*p0N@St2mZc!-LbH2`;cFUg2 zKQsTHng4WV9{$!|v)0<*x7M0H^Uv%bKitF3fSUm~18xTXgADkY=2%crke{EQoSYmK z6l6Mxn&ao^=jrL`#>U3d($d%0mztSieQIjz>gwt*TaKfnqnw-^!2}e;Ra8_wK0ew) z>hC0PZ*T4G?TTQ;DE<8W`uqFQ71O&{@&9P}55w^Ft!^6WV zDh*lh;xREX(cIk31)80m9UdNjdV1pY-Vd=L)z{Z|b#anpgecqm|y1To%(6_g@MMXuP{KTA3OibL_+2H^H zlDE-wb8}I58u#JhAtNKh+qg#je0Zz~EX5 zP!$6!!%av?pw)7PvWJ5!PWLR8Wj8{NSO-)v>M%K0>SWQh$ zF;)^c45768{$U|8i530`%Zm!7)!eKirol?$X*D-Xhq9$H0w@TeE3(q&*4x`ld!k#?TCV(EFT6%gV|igB6Av z#-dKyK}_PdxVR_^w4ON1t;p@^q5BZ@1hv$L1H(aOQ!5k0cUoovAuTP94xN=bFdS45 z*syyPkK61xI5-Fi3Gv`#%W1#>7zPXipcY==N zpm9e>N9lVNd?Lxt&Yqv2-`(APeSI~MBoU^#uF!$i)zv8}DKs8Hs$FB$?3;|;E9d9u zG(Em11D?q(Hkp~3&(F`k#z(>fV1W0n6ov+H_QARVl2@#x6rkLLgM-{!;#3&{17P%Y zpz@X@c~!Ca;M1&07*qoM6N<$f>jQE&;S4c literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/unblock.png b/Telegram/Resources/icons/menu/unblock.png new file mode 100644 index 0000000000000000000000000000000000000000..62966c2b74e64210c34b7a81f9e4de0288346411 GIT binary patch literal 781 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1SIoCSFHz9jKx9jP7LeL$-D$|Tv8)E(|mmy zw18|52FCVG1{RPKAeI7R1_tH@j10^`nh_+nfC(-uv49!D1}S`GTDq2jfvMcn#WBP} z@az;@kD@?{l_Wj=U>GvKkHJURCRf`uZ zYxNxEU|~A3bKkzU{PObe4<9Dl&A%hw#!R1O zSF;Qqt*4mGKC2_)n0*GJNYyn0pqat%Ia$A&q*6^-28c}>5vf%6XV)-fB*ii z+uy%#p_0T2&!s_2Os3U%efs@ZsI%pm)BXw@Ifv$h3=_Y9|33L7%fy2TA3l7TaO$oB z(1h2owN<3Jz4WFZt~88NM~ApB5cVlYCepkr%@;tN+*`wWOs${jb;F@YuO)7n8^G z%egD$^-ZQltqofla%O}7(>HH;7I>%}l5$Mmc&w)LW{%kO;MG^_JhQKvM{u<+y8b%R zdXC@oj~@+pH9To=hRm ze_{2{WyiZ6OD#;F7VW&5Gbv$1K!VZCn(FH0W&e4einAz8T|398co!%sdb;|#taD0e F0sxYYTB`s6 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/unblock@2x.png b/Telegram/Resources/icons/menu/unblock@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..d40eb59444d72c9bc22fbd483aca41773d63a674 GIT binary patch literal 1396 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 literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/unfavorite.png b/Telegram/Resources/icons/menu/unfavorite.png new file mode 100644 index 0000000000000000000000000000000000000000..8286346ac8b1a94f3d595e450a448aa12f201097 GIT binary patch literal 815 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 IM6N<$f@5g89RL6T literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/unfavorite@3x.png b/Telegram/Resources/icons/menu/unfavorite@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..0fbc2a0f5cf5f5d6f0ed5c272cfa89f142265ea9 GIT binary patch literal 2386 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 WRjuIS(LdKgQRM0B=d#Wzp$Py67T^8= literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/unpin@2x.png b/Telegram/Resources/icons/menu/unpin@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..89a0aead5bbde8311163b78bd6a4a67bf4813de1 GIT binary patch literal 959 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 Ef`a#Uv;Y7A literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/unread@3x.png b/Telegram/Resources/icons/menu/unread@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..220ce7598b66657bdd2055309804167cbe13d6af GIT binary patch literal 2053 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 jgdPYz5PIN$Q1G`M%$JMvU%uI^~%?ey&8Z2oh? z`p$Q|`?pJL?;7nrU$XD{ocBAQ*S-InWpZA9s@K!cm2>^R-&y46c+w^w((zx~c zX0t2)J(lS|UbdUpfAK|yt=C`AJe$_Kpu~z-_}tOAW%d7h@4uga{y9h2(WD#AZt>qw zJ}oks?xotgAZ+#42%RNOhab-HTkg?${Bcm+k;x~QTz)BV-fr#Dq?Fp%Z1N|idwJX0nj0&`TtpbZ@V7d3X+BXrujR{E7S2)(<2sps2tklRuXE)wW<<8Nn<)pj+I>Rl72&AQRe<>7``Uw>8YJ(pti{PWBT z%>(N1%69Lt4f-VB-P?5VLEZlL^G}O3XIu%$XuR%tDr@VZ->YvfdgIvo{`a1#i{|{@ ae^Y*K*k>76ao(w*c=dGkb6Mw<&;$UU@ct+O literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/view_replies@2x.png b/Telegram/Resources/icons/menu/view_replies@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..cc358365a096ca6bdd18fba8a32245e6b7d86e7b GIT binary patch literal 1039 zcmV+q1n~QbP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91FrWhf1ONa40RR91FaQ7m0NXcg3;+NFc}YY;R9Fe^SWQT3Q4sd$WlAoJ zFr+BTz=ffUXk(B_5D^4L5N+B7wka?n(ROayv=9n|XcK}P7Z$I=K(VMrEuuiMAQW6w zM1LSs8-sXnXdVaYo_jm@dV9PF-i1sv^L_I*bB~^L)Cx(DMx&XUn(FTEzP!AAe}9+6 zAuGt`a{c;vlF6i2tCf*kRUy~Fz`)MVj=Y+rNUE)^h2CJ3;8XTKNznvdscK?q+^0Sz z5(%|h&4A-gQSwF<3YAJVJv}`>K5jOf^?JQPW?fw!d=X&6%*@Q%+8WsKo_RbTlgUJY zcXxN^=jTU9M=vig#K~%ah?A2O^4hW+(P$KF`2Bt=>iYT`)+V10`m%3oYC1kXw%hG| zFabZ*6No~nwY3!{%cqGxvdzuSv9U4a-P+pP-rk08^OYGL9i5$>#pvVXqs?Y}czA$6 zxg%?CZXO&Qtf{Gi=*`VdS63I)?0R~7NUME5AD<5NyWMV*{Pgr>wOWPqdwYA|-rf*0 zJUlF%{3p7wuz-MEE~iw|TPRHpqIP$8kv|X!a0OA`p_Y~w%sV|j1tb@P9_Y==$_m=g z&(Hn+{h3ULFS*=LrVkS=_oGb_L>BPt>nj(49*4srO${F*@lynmn1BI-Fe<7y0)!;= zgIJ=Ba5&u8*9VaK`T2{B3sG3%WQl@qZ*O4%3sXyrN*tNAVk{_%pnN`$NMf)M$(2JH z+4Ax-vJ*qDVk|rqL8Ve@X=#ZC{2e)zk$p!QcFzAnkkM%T`SF0k{-4Q}NqL80n>R8t z0tK$FuHc7Ou1btNl#w+wG$5E5j9jv$Q3T1tE19G!NTGlYJN6HDnA}GG?G9Ni7V@in zc6P=UL|J9rq;gM3M+aQQlzZ51*dk6$Oz3nvfIxfTfX2m&6V%q$c5rae-rmk766=BU zWT8;tqC|`g_S&+j0UeW*ld)Kgs|Gx*9fEIdP}AAji7bbQhs9!%$|&H(qjWqTzrVld zOJfpbFc|jt_u+7jEWu#V>-F+6R_OnFWQ~oDsZz~;?Z7|Yf#2WN-+KRC1Lgn#002ov JPDHLkV1fYg(4GJQ literal 0 HcmV?d00001 diff --git a/Telegram/Resources/icons/menu/view_replies@3x.png b/Telegram/Resources/icons/menu/view_replies@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..b261bca6c10839c157a33d73d61b17ac60bc4e22 GIT binary patch literal 1418 zcmV;51$Fv~P)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91NT34%1ONa40RR91NB{r;0FW_8?*IS<^hrcPRA>e5TT3W@TNJ_6k1{ebGLZ?Hn~;)H7;rNYgFg`yN+@)o7Z1XxV*i+OG--O;^K~uj^5wjo$v%#xCE-D zrKNvAuGQ7m;NW0aMB#*ImX?+(sFc5(o0~4d=4m-J4-XIOGc`4JZf?#c*k~9Q(3pyt zfppM7yK3Alz(ZYNe1OEpMswm0^dC2FTU%TIhgt#*K*GFlKY;C1X%?K|Nl8i3(b1uy zp?kJ z`if_x8x(h8zT5*mm;Awrt9qNthHlB{R`4O zV1h0fwW6Y;^z?KpG&uvQD{gwv>9~TI)UwM&Gu2VdIeOwa8ts4?=#B_~iRvHx<#Ct4ot0 zz<#!sn&Sb(dLWIRVd*UiX&x{M!xaz71}2^>IW*mA#F$kx{$VC}0+yJVNN2;v#RX*< z+HHV^goM=8)X?bn_xCBw(Cz^Yy}|VKG_a}B<6Pa&&W_4D61>jCQJW+2_xB$h9AuXJ zIr`$a&;Vhph0*Wo>S81eYYi~$3*#4QVPPTT-AU})+8TCV_|7euiatI*}4NKsv1Ul$YB`DVdi-E)Y^=Apmr6k2-ri #include @@ -496,7 +497,9 @@ void ProxyRow::showMenu() { if (_menu) { return; } - _menu = base::make_unique_q(window()); + _menu = base::make_unique_q( + window(), + st::dropdownMenuWithIcons); const auto weak = _menu.get(); _menu->setHiddenCallback([=] { weak->deleteLater(); @@ -517,25 +520,26 @@ void ProxyRow::showMenu() { _menuToggle->installEventFilter(_menu); const auto addAction = [&]( const QString &text, - Fn callback) { + Fn callback, + const style::icon *icon) { return _menu->addAction(text, std::move(callback)); }; addAction(tr::lng_proxy_menu_edit(tr::now), [=] { _editClicks.fire({}); - }); + }, &st::menuIconEdit); if (_view.supportsShare) { addAction(tr::lng_proxy_edit_share(tr::now), [=] { _shareClicks.fire({}); - }); + }, &st::menuIconShare); } if (_view.deleted) { addAction(tr::lng_proxy_menu_restore(tr::now), [=] { _restoreClicks.fire({}); - }); + }, &st::menuIconDelete); } else { addAction(tr::lng_proxy_menu_delete(tr::now), [=] { _deleteClicks.fire({}); - }); + }, &st::menuIconDelete); } const auto parentTopLeft = window()->mapToGlobal(QPoint()); const auto buttonTopLeft = _menuToggle->mapToGlobal(QPoint()); diff --git a/Telegram/SourceFiles/boxes/dictionaries_manager.cpp b/Telegram/SourceFiles/boxes/dictionaries_manager.cpp index d83c9cdef..6d3bbd113 100644 --- a/Telegram/SourceFiles/boxes/dictionaries_manager.cpp +++ b/Telegram/SourceFiles/boxes/dictionaries_manager.cpp @@ -16,9 +16,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "mainwidget.h" #include "mtproto/dedicated_file_loader.h" #include "spellcheck/spellcheck_utils.h" -#include "styles/style_layers.h" -#include "styles/style_settings.h" -#include "styles/style_boxes.h" #include "ui/wrap/vertical_layout.h" #include "ui/widgets/buttons.h" #include "ui/widgets/labels.h" @@ -27,6 +24,10 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "ui/wrap/slide_wrap.h" #include "ui/effects/animations.h" #include "window/window_session_controller.h" +#include "styles/style_layers.h" +#include "styles/style_settings.h" +#include "styles/style_boxes.h" +#include "styles/style_menu_icons.h" namespace Ui { namespace { @@ -305,12 +306,14 @@ auto AddButtonWithLoader( if (!DictExists(id)) { return false; } - *contextMenu = base::make_unique_q(button); + *contextMenu = base::make_unique_q( + button, + st::popupMenuWithIcons); contextMenu->get()->addAction( tr::lng_settings_manage_remove_dictionary(tr::now), [=] { - Spellchecker::RemoveDictionary(id); - dictionaryRemoved->fire({}); - }); + Spellchecker::RemoveDictionary(id); + dictionaryRemoved->fire({}); + }, &st::menuIconDelete); contextMenu->get()->popup(QCursor::pos()); return true; }; diff --git a/Telegram/SourceFiles/boxes/language_box.cpp b/Telegram/SourceFiles/boxes/language_box.cpp index 2bca858d5..94635ebf8 100644 --- a/Telegram/SourceFiles/boxes/language_box.cpp +++ b/Telegram/SourceFiles/boxes/language_box.cpp @@ -33,6 +33,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_info.h" #include "styles/style_passport.h" #include "styles/style_chat_helpers.h" +#include "styles/style_menu_icons.h" #include #include @@ -437,7 +438,9 @@ void Rows::showMenu(int index) { if (_menu || !hasMenu(row)) { return; } - _menu = base::make_unique_q(window()); + _menu = base::make_unique_q( + window(), + st::dropdownMenuWithIcons); const auto weak = _menu.get(); _menu->setHiddenCallback([=] { weak->deleteLater(); @@ -460,21 +463,25 @@ void Rows::showMenu(int index) { }); const auto addAction = [&]( const QString &text, - Fn callback) { - return _menu->addAction(text, std::move(callback)); + Fn callback, + const style::icon *icon) { + return _menu->addAction(text, std::move(callback), icon); }; if (canShare(row)) { - addAction(tr::lng_proxy_edit_share(tr::now), [=] { share(row); }); + addAction( + tr::lng_proxy_edit_share(tr::now), + [=] { share(row); }, + &st::menuIconShare); } if (canRemove(row)) { if (row->removed) { addAction(tr::lng_proxy_menu_restore(tr::now), [=] { restore(row); - }); + }, &st::menuIconDelete); } else { addAction(tr::lng_proxy_menu_delete(tr::now), [=] { remove(row); - }); + }, &st::menuIconDelete); } } const auto toggle = menuToggleArea(row); diff --git a/Telegram/SourceFiles/boxes/peers/edit_participants_box.cpp b/Telegram/SourceFiles/boxes/peers/edit_participants_box.cpp index 8fd36a7cc..c979d01fc 100644 --- a/Telegram/SourceFiles/boxes/peers/edit_participants_box.cpp +++ b/Telegram/SourceFiles/boxes/peers/edit_participants_box.cpp @@ -32,6 +32,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "ui/ui_utility.h" #include "window/window_session_controller.h" #include "history/history.h" +#include "styles/style_menu_icons.h" namespace { @@ -1521,7 +1522,9 @@ base::unique_qptr ParticipantsBoxController::rowContextMenu( const auto channel = _peer->asChannel(); const auto participant = row->peer(); const auto user = participant->asUser(); - auto result = base::make_unique_q(parent); + auto result = base::make_unique_q( + parent, + st::popupMenuWithIcons); if (_navigation) { result->addAction( (participant->isUser() @@ -1530,7 +1533,10 @@ base::unique_qptr ParticipantsBoxController::rowContextMenu( ? tr::lng_context_view_channel : tr::lng_context_view_group)(tr::now), crl::guard(this, [=] { - _navigation->showPeerInfo(participant); })); + _navigation->showPeerInfo(participant); }), + (participant->isUser() + ? &st::menuIconProfile + : &st::menuIconInfo)); } if (_role == Role::Kicked) { if (_peer->isMegagroup() @@ -1538,11 +1544,13 @@ base::unique_qptr ParticipantsBoxController::rowContextMenu( if (user && channel->canAddMembers()) { result->addAction( tr::lng_context_add_to_group(tr::now), - crl::guard(this, [=] { unkickParticipant(user); })); + crl::guard(this, [=] { unkickParticipant(user); }), + &st::menuIconInvite); } result->addAction( tr::lng_profile_delete_removed(tr::now), - crl::guard(this, [=] { removeKickedWithRow(participant); })); + crl::guard(this, [=] { removeKickedWithRow(participant); }), + &st::menuIconDelete); } return result; } @@ -1553,7 +1561,10 @@ base::unique_qptr ParticipantsBoxController::rowContextMenu( (isAdmin ? tr::lng_context_edit_permissions : tr::lng_context_promote_admin)(tr::now), - crl::guard(this, [=] { showAdmin(user); })); + crl::guard(this, [=] { showAdmin(user); }), + (isAdmin + ? &st::menuIconAdmin + : &st::menuIconPromote)); } if (user && _additional.canRestrictParticipant(participant)) { const auto canRestrictWithoutKick = [&] { @@ -1565,7 +1576,8 @@ base::unique_qptr ParticipantsBoxController::rowContextMenu( if (canRestrictWithoutKick) { result->addAction( tr::lng_context_restrict_user(tr::now), - crl::guard(this, [=] { showRestricted(user); })); + crl::guard(this, [=] { showRestricted(user); }), + &st::menuIconRestrict); } } if (user && _additional.canRemoveParticipant(participant)) { @@ -1575,7 +1587,8 @@ base::unique_qptr ParticipantsBoxController::rowContextMenu( (isGroup ? tr::lng_context_remove_from_group : tr::lng_profile_kick)(tr::now), - crl::guard(this, [=] { kickParticipant(user); })); + crl::guard(this, [=] { kickParticipant(user); }), + &st::menuIconRemove); } } return result; diff --git a/Telegram/SourceFiles/boxes/peers/edit_peer_invite_link.cpp b/Telegram/SourceFiles/boxes/peers/edit_peer_invite_link.cpp index 33b648a49..2f49c1ea6 100644 --- a/Telegram/SourceFiles/boxes/peers/edit_peer_invite_link.cpp +++ b/Telegram/SourceFiles/boxes/peers/edit_peer_invite_link.cpp @@ -46,6 +46,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_layers.h" // st::boxDividerLabel. #include "styles/style_info.h" #include "styles/style_settings.h" +#include "styles/style_menu_icons.h" #include #include @@ -349,28 +350,36 @@ void Controller::addHeaderBlock(not_null container) { }); const auto createMenu = [=] { - auto result = base::make_unique_q(container); + auto result = base::make_unique_q( + container, + st::popupMenuWithIcons); if (revoked) { result->addAction( tr::lng_group_invite_context_delete(tr::now), - deleteLink); + deleteLink, + &st::menuIconDelete); } else { result->addAction( tr::lng_group_invite_context_copy(tr::now), - copyLink); + copyLink, + &st::menuIconCopy); result->addAction( tr::lng_group_invite_context_share(tr::now), - shareLink); + shareLink, + &st::menuIconShare); result->addAction( tr::lng_group_invite_context_qr(tr::now), - getLinkQr); + getLinkQr, + &st::menuIconQrCode); if (!admin->isBot()) { result->addAction( tr::lng_group_invite_context_edit(tr::now), - editLink); + editLink, + &st::menuIconEdit); result->addAction( tr::lng_group_invite_context_revoke(tr::now), - revokeLink); + revokeLink, + &st::menuIconRemove); } } return result; @@ -745,16 +754,18 @@ base::unique_qptr Controller::createRowContextMenu( const auto user = row->peer()->asUser(); Assert(user != nullptr); - auto result = base::make_unique_q(parent); + auto result = base::make_unique_q( + parent, + st::popupMenuWithIcons); const auto add = _peer->isBroadcast() ? tr::lng_group_requests_add_channel(tr::now) : tr::lng_group_requests_add(tr::now); result->addAction(add, [=] { processRequest(user, true); - }); + }, &st::menuIconInvite); result->addAction(tr::lng_group_requests_dismiss(tr::now), [=] { processRequest(user, false); - }); + }, &st::menuIconRemove); return result; } @@ -960,20 +971,26 @@ void AddPermanentLinkBlock( : data.link; }); const auto createMenu = [=] { - auto result = base::make_unique_q(container); + auto result = base::make_unique_q( + container, + st::popupMenuWithIcons); result->addAction( tr::lng_group_invite_context_copy(tr::now), - copyLink); + copyLink, + &st::menuIconCopy); result->addAction( tr::lng_group_invite_context_share(tr::now), - shareLink); + shareLink, + &st::menuIconShare); result->addAction( tr::lng_group_invite_context_qr(tr::now), - getLinkQr); + getLinkQr, + &st::menuIconQrCode); if (!admin->isBot()) { result->addAction( tr::lng_group_invite_context_revoke(tr::now), - revokeLink); + revokeLink, + &st::menuIconRemove); } return result; }; diff --git a/Telegram/SourceFiles/boxes/peers/edit_peer_invite_links.cpp b/Telegram/SourceFiles/boxes/peers/edit_peer_invite_links.cpp index 5a187af23..91f592a66 100644 --- a/Telegram/SourceFiles/boxes/peers/edit_peer_invite_links.cpp +++ b/Telegram/SourceFiles/boxes/peers/edit_peer_invite_links.cpp @@ -28,6 +28,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_info.h" #include "styles/style_layers.h" // st::boxDividerLabel #include "styles/style_settings.h" // st::settingsDividerLabelPadding +#include "styles/style_menu_icons.h" #include @@ -578,27 +579,29 @@ base::unique_qptr LinksController::createRowContextMenu( const auto real = static_cast(row.get()); const auto data = real->data(); const auto link = data.link; - auto result = base::make_unique_q(parent); + auto result = base::make_unique_q( + parent, + st::popupMenuWithIcons); if (data.revoked) { result->addAction(tr::lng_group_invite_context_delete(tr::now), [=] { DeleteLink(_peer, _admin, link); - }); + }, &st::menuIconDelete); } else { result->addAction(tr::lng_group_invite_context_copy(tr::now), [=] { CopyInviteLink(link); - }); + }, &st::menuIconCopy); result->addAction(tr::lng_group_invite_context_share(tr::now), [=] { ShareInviteLinkBox(_peer, link); - }); + }, &st::menuIconShare); result->addAction(tr::lng_group_invite_context_qr(tr::now), [=] { InviteLinkQrBox(link); - }); + }, &st::menuIconQrCode); result->addAction(tr::lng_group_invite_context_edit(tr::now), [=] { EditLink(_peer, data); - }); + }, &st::menuIconEdit); result->addAction(tr::lng_group_invite_context_revoke(tr::now), [=] { RevokeLink(_peer, _admin, link); - }); + }, &st::menuIconRemove); } return result; } diff --git a/Telegram/SourceFiles/boxes/sticker_set_box.cpp b/Telegram/SourceFiles/boxes/sticker_set_box.cpp index 2b2852381..b07a71c83 100644 --- a/Telegram/SourceFiles/boxes/sticker_set_box.cpp +++ b/Telegram/SourceFiles/boxes/sticker_set_box.cpp @@ -43,6 +43,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_layers.h" #include "styles/style_chat_helpers.h" #include "styles/style_info.h" +#include "styles/style_menu_icons.h" #include #include @@ -297,12 +298,15 @@ void StickerSetBox::updateButtons() { const auto menu = std::make_shared>(); top->setClickedCallback([=] { - *menu = base::make_unique_q(top); + *menu = base::make_unique_q( + top, + st::popupMenuWithIcons); (*menu)->addAction( (isMasks ? tr::lng_stickers_share_masks : tr::lng_stickers_share_pack)(tr::now), - share); + share, + &st::menuIconShare); (*menu)->popup(QCursor::pos()); return true; }); @@ -328,12 +332,15 @@ void StickerSetBox::updateButtons() { const auto menu = std::make_shared>(); top->setClickedCallback([=] { - *menu = base::make_unique_q(top); + *menu = base::make_unique_q( + top, + st::popupMenuWithIcons); (*menu)->addAction( isMasks ? tr::lng_masks_archive_pack(tr::now) : tr::lng_stickers_archive_pack(tr::now), - archive); + archive, + &st::menuIconArchive); (*menu)->popup(QCursor::pos()); return true; }); @@ -652,7 +659,9 @@ void StickerSetBox::Inner::contextMenuEvent(QContextMenuEvent *e) { return; } _previewTimer.cancel(); - _menu = base::make_unique_q(this); + _menu = base::make_unique_q( + this, + st::popupMenuWithIcons); const auto document = _pack[index]; const auto sendSelected = [=](Api::SendOptions options) { @@ -669,11 +678,15 @@ void StickerSetBox::Inner::contextMenuEvent(QContextMenuEvent *e) { document, Data::FileOriginStickerSet(Data::Stickers::FavedSetId, 0)); }; + const auto isFaved = document->owner().stickers().isFaved(document); _menu->addAction( - (document->owner().stickers().isFaved(document) + (isFaved ? tr::lng_faved_stickers_remove : tr::lng_faved_stickers_add)(tr::now), - toggleFavedSticker); + toggleFavedSticker, + (isFaved + ? &st::menuIconUnfave + : &st::menuIconFave)); _menu->popup(QCursor::pos()); } diff --git a/Telegram/SourceFiles/calls/calls_box_controller.cpp b/Telegram/SourceFiles/calls/calls_box_controller.cpp index 85bc8ab86..2fc5122b7 100644 --- a/Telegram/SourceFiles/calls/calls_box_controller.cpp +++ b/Telegram/SourceFiles/calls/calls_box_controller.cpp @@ -30,6 +30,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_layers.h" // st::boxLabel. #include "styles/style_calls.h" #include "styles/style_boxes.h" +#include "styles/style_menu_icons.h" namespace Calls { namespace { @@ -356,12 +357,14 @@ base::unique_qptr BoxController::rowContextMenu( const auto session = &this->session(); const auto ids = session->data().itemsToIds(items); - auto result = base::make_unique_q(parent); + auto result = base::make_unique_q( + parent, + st::popupMenuWithIcons); result->addAction(tr::lng_context_delete_selected(tr::now), [=] { _window->show( Box(session, base::duplicate(ids)), Ui::LayerOption::KeepOther); - }); + }, &st::menuIconDelete); return result; } diff --git a/Telegram/SourceFiles/chat_helpers/field_autocomplete.cpp b/Telegram/SourceFiles/chat_helpers/field_autocomplete.cpp index 39d2a214d..7156707e3 100644 --- a/Telegram/SourceFiles/chat_helpers/field_autocomplete.cpp +++ b/Telegram/SourceFiles/chat_helpers/field_autocomplete.cpp @@ -37,12 +37,13 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "ui/cached_round_corners.h" #include "base/unixtime.h" #include "base/random.h" +#include "base/qt_adapters.h" #include "window/window_adaptive.h" #include "window/window_session_controller.h" #include "styles/style_chat.h" #include "styles/style_widgets.h" #include "styles/style_chat_helpers.h" -#include "base/qt_adapters.h" +#include "styles/style_menu_icons.h" #include @@ -1190,7 +1191,9 @@ void FieldAutocomplete::Inner::contextMenuEvent(QContextMenuEvent *e) { ? _sendMenuType() : SendMenu::Type::Disabled; const auto method = FieldAutocomplete::ChooseMethod::ByClick; - _menu = base::make_unique_q(this); + _menu = base::make_unique_q( + this, + st::popupMenuWithIcons); const auto send = [=](Api::SendOptions options) { chooseAtIndex(method, index, options); diff --git a/Telegram/SourceFiles/chat_helpers/gifs_list_widget.cpp b/Telegram/SourceFiles/chat_helpers/gifs_list_widget.cpp index 213fcdac1..fa91ecc26 100644 --- a/Telegram/SourceFiles/chat_helpers/gifs_list_widget.cpp +++ b/Telegram/SourceFiles/chat_helpers/gifs_list_widget.cpp @@ -35,6 +35,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "history/view/history_view_cursor_state.h" #include "storage/storage_account.h" // Account::writeSavedGifs #include "styles/style_chat_helpers.h" +#include "styles/style_menu_icons.h" #include @@ -48,7 +49,7 @@ constexpr auto kSearchBotUsername = "gif"_cs; } // namespace void AddGifAction( - Fn &&)> callback, + Fn &&, const style::icon*)> callback, not_null document) { if (!document->isGifv()) { return; @@ -71,7 +72,7 @@ void AddGifAction( document->session().local().writeSavedGifs(); } data.stickers().notifySavedGifsUpdated(); - }); + }, saved ? &st::menuIconDelete : &st::menuIconGif); } class GifsListWidget::Footer : public TabbedSelector::InnerFooter { @@ -386,8 +387,11 @@ void GifsListWidget::fillContextMenu( ? item->getDocument() // Saved GIF. : item->getPreviewDocument(); // Searched GIF. if (document) { - auto callback = [&](const QString &text, Fn &&done) { - menu->addAction(text, std::move(done)); + auto callback = [&]( + const QString &text, + Fn &&done, + const style::icon *icon) { + menu->addAction(text, std::move(done), icon); }; AddGifAction(std::move(callback), document); } diff --git a/Telegram/SourceFiles/chat_helpers/gifs_list_widget.h b/Telegram/SourceFiles/chat_helpers/gifs_list_widget.h index b03485b32..f07044ebb 100644 --- a/Telegram/SourceFiles/chat_helpers/gifs_list_widget.h +++ b/Telegram/SourceFiles/chat_helpers/gifs_list_widget.h @@ -41,7 +41,7 @@ enum class Type; namespace ChatHelpers { void AddGifAction( - Fn &&)> callback, + Fn &&, const style::icon*)> callback, not_null document); class GifsListWidget diff --git a/Telegram/SourceFiles/chat_helpers/send_context_menu.cpp b/Telegram/SourceFiles/chat_helpers/send_context_menu.cpp index 9c3ac27ff..16ac9378f 100644 --- a/Telegram/SourceFiles/chat_helpers/send_context_menu.cpp +++ b/Telegram/SourceFiles/chat_helpers/send_context_menu.cpp @@ -17,6 +17,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "data/data_peer.h" #include "main/main_session.h" #include "apiwrap.h" +#include "styles/style_menu_icons.h" #include @@ -56,14 +57,18 @@ FillMenuResult FillSendMenu( } if (silent && now != Type::Reminder) { - menu->addAction(tr::lng_send_silent_message(tr::now), silent); + menu->addAction( + tr::lng_send_silent_message(tr::now), + silent, + &st::menuIconMute); } if (schedule && now != Type::SilentOnly) { menu->addAction( (now == Type::Reminder ? tr::lng_reminder_message(tr::now) : tr::lng_schedule_message(tr::now)), - schedule); + schedule, + &st::menuIconSchedule); } return FillMenuResult::Success; } @@ -78,7 +83,9 @@ void SetupMenuAndShortcuts( } const auto menu = std::make_shared>(); const auto showMenu = [=] { - *menu = base::make_unique_q(button); + *menu = base::make_unique_q( + button, + st::popupMenuWithIcons); const auto result = FillSendMenu(*menu, type(), silent, schedule); const auto success = (result == FillMenuResult::Success); if (success) { @@ -149,7 +156,9 @@ void SetupUnreadMentionsMenu( if (!peer) { return; } - state->menu = base::make_unique_q(button); + state->menu = base::make_unique_q( + button, + st::popupMenuWithIcons); const auto text = tr::lng_context_mark_read_mentions_all(tr::now); state->menu->addAction(text, [=] { if (!state->sentForPeers.emplace(peer).second) { @@ -163,7 +172,7 @@ void SetupUnreadMentionsMenu( }).fail([=] { state->sentForPeers.remove(peer); }).send(); - }); + }, &st::menuIconMarkRead); state->menu->popup(QCursor::pos()); }; diff --git a/Telegram/SourceFiles/chat_helpers/stickers_list_widget.cpp b/Telegram/SourceFiles/chat_helpers/stickers_list_widget.cpp index eeccc6f36..bceb5a770 100644 --- a/Telegram/SourceFiles/chat_helpers/stickers_list_widget.cpp +++ b/Telegram/SourceFiles/chat_helpers/stickers_list_widget.cpp @@ -42,6 +42,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "api/api_toggling_media.h" // Api::ToggleFavedSticker #include "styles/style_chat_helpers.h" #include "styles/style_window.h" +#include "styles/style_menu_icons.h" #include @@ -2173,15 +2174,17 @@ void StickersListWidget::fillContextMenu( document, Data::FileOriginStickerSet(Data::Stickers::FavedSetId, 0)); }; + const auto isFaved = document->owner().stickers().isFaved(document); menu->addAction( - (document->owner().stickers().isFaved(document) + (isFaved ? tr::lng_faved_stickers_remove : tr::lng_faved_stickers_add)(tr::now), - toggleFavedSticker); + toggleFavedSticker, + isFaved ? &st::menuIconUnfave : &st::menuIconFave); menu->addAction(tr::lng_context_pack_info(tr::now), [=] { showStickerSetBox(document); - }); + }, &st::menuIconStickers); if (const auto id = set.id; id == Data::Stickers::RecentSetId) { menu->addAction(tr::lng_recent_stickers_remove(tr::now), [=] { @@ -2189,7 +2192,7 @@ void StickersListWidget::fillContextMenu( document, Data::FileOriginStickerSet(id, 0), false); - }); + }, &st::menuIconDelete); } } } diff --git a/Telegram/SourceFiles/chat_helpers/tabbed_selector.cpp b/Telegram/SourceFiles/chat_helpers/tabbed_selector.cpp index 47bfaf5f7..4b78b3f33 100644 --- a/Telegram/SourceFiles/chat_helpers/tabbed_selector.cpp +++ b/Telegram/SourceFiles/chat_helpers/tabbed_selector.cpp @@ -31,6 +31,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "mainwindow.h" #include "apiwrap.h" #include "styles/style_chat_helpers.h" +#include "styles/style_menu_icons.h" namespace ChatHelpers { @@ -1057,7 +1058,9 @@ void TabbedSelector::scrollToY(int y) { } void TabbedSelector::showMenuWithType(SendMenu::Type type) { - _menu = base::make_unique_q(this); + _menu = base::make_unique_q( + this, + st::popupMenuWithIcons); currentTab()->widget()->fillContextMenu(_menu, type); if (!_menu->empty()) { diff --git a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp index 0df9533cd..21096322f 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp @@ -50,10 +50,11 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "ui/unread_badge.h" #include "boxes/filters/edit_filter_box.h" #include "api/api_chat_filters.h" +#include "base/qt_adapters.h" #include "styles/style_dialogs.h" #include "styles/style_chat_helpers.h" #include "styles/style_window.h" -#include "base/qt_adapters.h" +#include "styles/style_menu_icons.h" namespace Dialogs { namespace { @@ -1760,7 +1761,9 @@ void InnerWidget::contextMenuEvent(QContextMenuEvent *e) { mousePressReleased(e->globalPos(), _pressButton); } - _menu = base::make_unique_q(this); + _menu = base::make_unique_q( + this, + row.fullId ? st::defaultPopupMenu : st::popupMenuWithIcons); if (row.fullId) { if (session().supportMode()) { fillSupportSearchMenu(_menu.get()); @@ -1775,8 +1778,11 @@ void InnerWidget::contextMenuEvent(QContextMenuEvent *e) { .section = Dialogs::EntryState::Section::ChatsList, .filterId = _filterId, }, - [&](const QString &text, Fn callback) { - return _menu->addAction(text, std::move(callback)); + [&]( + const QString &text, + Fn callback, + const style::icon *icon) { + return _menu->addAction(text, std::move(callback), icon); }); } connect(_menu.get(), &QObject::destroyed, [=] { diff --git a/Telegram/SourceFiles/history/admin_log/history_admin_log_inner.cpp b/Telegram/SourceFiles/history/admin_log/history_admin_log_inner.cpp index 7b3f24f16..c2504a29f 100644 --- a/Telegram/SourceFiles/history/admin_log/history_admin_log_inner.cpp +++ b/Telegram/SourceFiles/history/admin_log/history_admin_log_inner.cpp @@ -57,6 +57,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "facades.h" #include "app.h" #include "styles/style_chat.h" +#include "styles/style_menu_icons.h" #include #include @@ -1158,7 +1159,9 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { isUponSelected = hasSelected; } - _menu = base::make_unique_q(this); + _menu = base::make_unique_q( + this, + st::popupMenuWithIcons); const auto link = ClickHandler::getActive(); auto view = App::hoveredItem() @@ -1176,7 +1179,7 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (isUponSelected > 0) { _menu->addAction(tr::lng_context_copy_selected(tr::now), [=] { copySelectedText(); - }); + }, &st::menuIconCopy); } if (lnkPhoto) { const auto photo = lnkPhoto->photo(); @@ -1184,10 +1187,10 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (!photo->isNull() && media && media->loaded()) { _menu->addAction(tr::lng_context_save_image(tr::now), App::LambdaDelayed(st::defaultDropdownMenu.menu.ripple.hideDuration, this, [=] { savePhotoToFile(photo); - })); + }), &st::menuIconSaveImage); _menu->addAction(tr::lng_context_copy_image(tr::now), [=] { copyContextImage(photo); - }); + }, &st::menuIconCopy); } if (photo->hasAttachedStickers()) { const auto controller = _controller; @@ -1197,14 +1200,15 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { }; _menu->addAction( tr::lng_context_attached_stickers(tr::now), - std::move(callback)); + std::move(callback), + &st::menuIconStickers); } } else { auto document = lnkDocument->document(); if (document->loading()) { _menu->addAction(tr::lng_context_cancel_download(tr::now), [=] { cancelContextDownload(document); - }); + }, &st::menuIconCancel); } else { const auto itemId = view ? view->data()->fullId() @@ -1220,17 +1224,17 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (notAutoplayedGif) { _menu->addAction(tr::lng_context_open_gif(tr::now), [=] { openContextGif(itemId); - }); + }, &st::menuIconShowInChat); } } if (!document->filepath(true).isEmpty()) { _menu->addAction(Platform::IsMac() ? tr::lng_context_show_in_finder(tr::now) : tr::lng_context_show_in_folder(tr::now), [=] { showContextInFolder(document); - }); + }, &st::menuIconShowInFolder); } _menu->addAction(lnkIsVideo ? tr::lng_context_save_video(tr::now) : (lnkIsVoice ? tr::lng_context_save_audio(tr::now) : (lnkIsAudio ? tr::lng_context_save_audio_file(tr::now) : tr::lng_context_save_file(tr::now))), App::LambdaDelayed(st::defaultDropdownMenu.menu.ripple.hideDuration, this, [this, document] { saveDocumentToFile(document); - })); + }), &st::menuIconDownload); if (document->hasAttachedStickers()) { const auto controller = _controller; auto callback = [=, doc = document] { @@ -1239,7 +1243,8 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { }; _menu->addAction( tr::lng_context_attached_stickers(tr::now), - std::move(callback)); + std::move(callback), + &st::menuIconStickers); } } } @@ -1253,7 +1258,10 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { auto msg = dynamic_cast(item); if (isUponSelected > 0) { - _menu->addAction(tr::lng_context_copy_selected(tr::now), [this] { copySelectedText(); }); + _menu->addAction( + tr::lng_context_copy_selected(tr::now), + [this] { copySelectedText(); }, + &st::menuIconCopy); } else { if (item && !isUponSelected) { const auto media = view->media(); @@ -1262,7 +1270,7 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (document->sticker()) { _menu->addAction(tr::lng_context_save_image(tr::now), App::LambdaDelayed(st::defaultDropdownMenu.menu.ripple.hideDuration, this, [this, document] { saveDocumentToFile(document); - })); + }), &st::menuIconDownload); } } if (msg @@ -1272,7 +1280,7 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { || item->Has())) { _menu->addAction(tr::lng_context_copy_text(tr::now), [=] { copyContextText(itemId); - }); + }, &st::menuIconCopy); } } } @@ -1285,7 +1293,8 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { actionText, [text = link->copyToClipboardText()] { QGuiApplication::clipboard()->setText(text); - }); + }, + &st::menuIconCopy); } } diff --git a/Telegram/SourceFiles/history/history_inner_widget.cpp b/Telegram/SourceFiles/history/history_inner_widget.cpp index 284b69902..b9def165e 100644 --- a/Telegram/SourceFiles/history/history_inner_widget.cpp +++ b/Telegram/SourceFiles/history/history_inner_widget.cpp @@ -49,6 +49,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "chat_helpers/emoji_interactions.h" #include "history/history_widget.h" #include "base/platform/base_platform_info.h" +#include "base/qt_adapters.h" #include "base/unixtime.h" #include "mainwindow.h" #include "layout/layout_selection.h" @@ -82,7 +83,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "app.h" #include "styles/style_chat.h" #include "styles/style_window.h" // st::windowMinWidth -#include "base/qt_adapters.h" +#include "styles/style_menu_icons.h" #include #include @@ -1673,7 +1674,7 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { && Api::WhoReadExists(_dragStateItem); _menu = base::make_unique_q( this, - hasWhoReadItem ? st::whoReadMenu : st::defaultPopupMenu); + hasWhoReadItem ? st::whoReadMenu : st::popupMenuWithIcons); const auto session = &this->session(); const auto controller = _controller; const auto groupLeaderOrSelf = [](HistoryItem *item) -> HistoryItem* { @@ -1706,13 +1707,13 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { item->addReaction(entry.emoji); }); } - _menu->addAction("Reaction", std::move(reactionMenu)); + _menu->addAction("Reaction", std::move(reactionMenu), &st::menuIconReactions); } } if (canSendMessages) { _menu->addAction(tr::lng_context_reply_msg(tr::now), [=] { _widget->replyToMessage(itemId); - }); + }, &st::menuIconReply); } const auto repliesCount = item->repliesCount(); const auto withReplies = (repliesCount > 0); @@ -1726,7 +1727,7 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { : tr::lng_replies_view_thread(tr::now); _menu->addAction(phrase, [=] { controller->showRepliesForMessage(_history, rootId); - }); + }, &st::menuIconViewReplies); } const auto t = base::unixtime::now(); const auto editItem = (albumPartItem && albumPartItem->allowsEdit(t)) @@ -1738,7 +1739,7 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { const auto editItemId = editItem->fullId(); _menu->addAction(tr::lng_context_edit_msg(tr::now), [=] { _widget->editMessage(editItemId); - }); + }, &st::menuIconEdit); } const auto pinItem = (item->canPin() && item->isPinned()) ? item @@ -1749,7 +1750,7 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { const auto controller = _controller; _menu->addAction(isPinned ? tr::lng_context_unpin_msg(tr::now) : tr::lng_context_pin_msg(tr::now), crl::guard(controller, [=] { Window::ToggleMessagePinned(controller, pinItemId, !isPinned); - })); + }), isPinned ? &st::menuIconUnpin : &st::menuIconPin); } }; const auto addPhotoActions = [&](not_null photo, HistoryItem *item) { @@ -1758,24 +1759,24 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (!photo->isNull() && media && media->loaded() && !hasCopyRestriction(item)) { _menu->addAction(tr::lng_context_save_image(tr::now), App::LambdaDelayed(st::defaultDropdownMenu.menu.ripple.hideDuration, this, [=] { savePhotoToFile(photo); - })); + }), &st::menuIconSaveImage); _menu->addAction(tr::lng_context_copy_image(tr::now), [=] { copyContextImage(photo, itemId); - }); + }, &st::menuIconCopy); } if (photo->hasAttachedStickers()) { _menu->addAction(tr::lng_context_attached_stickers(tr::now), [=] { session->api().attachedStickers().requestAttachedStickerSets( controller, photo); - }); + }, &st::menuIconStickers); } }; const auto addDocumentActions = [&](not_null document, HistoryItem *item) { if (document->loading()) { _menu->addAction(tr::lng_context_cancel_download(tr::now), [=] { cancelContextDownload(document); - }); + }, &st::menuIconCancel); return; } const auto itemId = item ? item->fullId() : FullMsgId(); @@ -1794,30 +1795,30 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (notAutoplayedGif) { _menu->addAction(tr::lng_context_open_gif(tr::now), [=] { openContextGif(itemId); - }); + }, &st::menuIconShowInChat); } if (!hasCopyRestriction(item)) { _menu->addAction(tr::lng_context_save_gif(tr::now), [=] { saveContextGif(itemId); - }); + }, &st::menuIconGif); } } if (!document->filepath(true).isEmpty()) { _menu->addAction(Platform::IsMac() ? tr::lng_context_show_in_finder(tr::now) : tr::lng_context_show_in_folder(tr::now), [=] { showContextInFolder(document); - }); + }, &st::menuIconShowInFolder); } if (!hasCopyRestriction(item)) { _menu->addAction(lnkIsVideo ? tr::lng_context_save_video(tr::now) : (lnkIsVoice ? tr::lng_context_save_audio(tr::now) : (lnkIsAudio ? tr::lng_context_save_audio_file(tr::now) : tr::lng_context_save_file(tr::now))), App::LambdaDelayed(st::defaultDropdownMenu.menu.ripple.hideDuration, this, [=] { saveDocumentToFile(itemId, document); - })); + }), &st::menuIconDownload); } if (document->hasAttachedStickers()) { _menu->addAction(tr::lng_context_attached_stickers(tr::now), [=] { session->api().attachedStickers().requestAttachedStickerSets( controller, document); - }); + }, &st::menuIconStickers); } }; @@ -1840,7 +1841,7 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { _widget->updateTopBarSelection(); } } - }); + }, &st::menuIconSelect); } }; @@ -1866,7 +1867,8 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { (isUponSelected > 1 ? tr::lng_context_copy_selected_items(tr::now) : tr::lng_context_copy_selected(tr::now)), - [=] { copySelectedText(); }); + [=] { copySelectedText(); }, + &st::menuIconCopy); } addItemActions(item, item); if (lnkPhoto) { @@ -1877,22 +1879,22 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (item && item->hasDirectLink() && isUponSelected != 2 && isUponSelected != -2) { _menu->addAction(item->history()->peer->isMegagroup() ? tr::lng_context_copy_message_link(tr::now) : tr::lng_context_copy_post_link(tr::now), [=] { HistoryView::CopyPostLink(session, itemId, HistoryView::Context::History); - }); + }, &st::menuIconLink); } if (isUponSelected > 1) { if (selectedState.count > 0 && selectedState.canForwardCount == selectedState.count) { _menu->addAction(tr::lng_context_forward_selected(tr::now), [=] { _widget->forwardSelected(); - }); + }, &st::menuIconForward); } if (selectedState.count > 0 && selectedState.canDeleteCount == selectedState.count) { _menu->addAction(tr::lng_context_delete_selected(tr::now), [=] { _widget->confirmDeleteSelected(); - }); + }, &st::menuIconDelete); } _menu->addAction(tr::lng_context_clear_selection(tr::now), [=] { _widget->clearSelected(); - }); + }, &st::menuIconSelect); } else if (item) { const auto itemId = item->fullId(); const auto blockSender = item->history()->peer->isRepliesChat(); @@ -1900,7 +1902,7 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (item->allowsForward()) { _menu->addAction(tr::lng_context_forward_msg(tr::now), [=] { forwardItem(itemId); - }); + }, &st::menuIconForward); } if (item->canDelete()) { _menu->addAction(Ui::DeleteMessageContextAction( @@ -1912,14 +1914,14 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (!blockSender && item->suggestReport()) { _menu->addAction(tr::lng_context_report_msg(tr::now), [=] { reportItem(itemId); - }); + }, &st::menuIconReport); } } addSelectMessageAction(item, false); if (isUponSelected != -2 && blockSender) { _menu->addAction(tr::lng_profile_block_user(tr::now), [=] { blockSenderItem(itemId); - }); + }, &st::menuIconBlock); } } } else { // maybe cursor on some text history item? @@ -1947,7 +1949,8 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { ((isUponSelected > 1) ? tr::lng_context_copy_selected_items(tr::now) : tr::lng_context_copy_selected(tr::now)), - [=] { copySelectedText(); }); + [=] { copySelectedText(); }, + &st::menuIconCopy); } addItemActions(item, item); } else { @@ -1960,15 +1963,16 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (document->sticker()->set) { _menu->addAction(document->isStickerSetInstalled() ? tr::lng_context_pack_info(tr::now) : tr::lng_context_pack_add(tr::now), [=] { showStickerPackInfo(document); - }); - _menu->addAction(session->data().stickers().isFaved(document) ? tr::lng_faved_stickers_remove(tr::now) : tr::lng_faved_stickers_add(tr::now), [=] { + }, &st::menuIconStickers); + const auto isFaved = session->data().stickers().isFaved(document); + _menu->addAction(isFaved ? tr::lng_faved_stickers_remove(tr::now) : tr::lng_faved_stickers_add(tr::now), [=] { Api::ToggleFavedSticker(document, itemId); - }); + }, isFaved ? &st::menuIconUnfave : &st::menuIconFave); } if (!hasCopyRestriction(item)) { _menu->addAction(tr::lng_context_save_image(tr::now), App::LambdaDelayed(st::defaultDropdownMenu.menu.ripple.hideDuration, this, [=] { saveDocumentToFile(itemId, document); - })); + }), &st::menuIconDownload); } } } @@ -1983,13 +1987,13 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { const auto phone = contact->phoneNumber; _menu->addAction(tr::lng_profile_copy_phone(tr::now), [=] { QGuiApplication::clipboard()->setText(phone); - }); + }, &st::menuIconCopy); } } if (item->isSponsored()) { _menu->addAction(tr::lng_sponsored_title({}), [=] { _controller->show(Box(Ui::AboutSponsoredBox)); - }); + }, &st::menuIconInfo); } if (!item->isService() && view @@ -1998,7 +2002,7 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { && (view->hasVisibleText() || mediaHasTextForCopy)) { _menu->addAction(tr::lng_context_copy_text(tr::now), [=] { copyContextText(itemId); - }); + }, &st::menuIconCopy); } } } @@ -2011,39 +2015,40 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { actionText, [text = link->copyToClipboardText()] { QGuiApplication::clipboard()->setText(text); - }); + }, + &st::menuIconCopy); } else if (item && item->hasDirectLink() && isUponSelected != 2 && isUponSelected != -2) { _menu->addAction(item->history()->peer->isMegagroup() ? tr::lng_context_copy_message_link(tr::now) : tr::lng_context_copy_post_link(tr::now), [=] { HistoryView::CopyPostLink(session, itemId, HistoryView::Context::History); - }); + }, &st::menuIconLink); } if (isUponSelected > 1) { if (selectedState.count > 0 && selectedState.count == selectedState.canForwardCount) { _menu->addAction(tr::lng_context_forward_selected(tr::now), [=] { _widget->forwardSelected(); - }); + }, &st::menuIconForward); } if (selectedState.count > 0 && selectedState.count == selectedState.canDeleteCount) { _menu->addAction(tr::lng_context_delete_selected(tr::now), [=] { _widget->confirmDeleteSelected(); - }); + }, &st::menuIconDelete); } _menu->addAction(tr::lng_context_clear_selection(tr::now), [=] { _widget->clearSelected(); - }); + }, &st::menuIconSelect); } else if (item && ((isUponSelected != -2 && (canForward || canDelete)) || item->isRegular())) { if (isUponSelected != -2) { if (canForward) { _menu->addAction(tr::lng_context_forward_msg(tr::now), [=] { forwardAsGroup(itemId); - }); + }, &st::menuIconForward); } if (canDelete) { const auto callback = [=] { deleteAsGroup(itemId); }; if (item->isUploading()) { - _menu->addAction(tr::lng_context_cancel_upload(tr::now), callback); + _menu->addAction(tr::lng_context_cancel_upload(tr::now), callback, &st::menuIconCancel); } else { _menu->addAction(Ui::DeleteMessageContextAction( _menu->menu(), @@ -2055,14 +2060,14 @@ void HistoryInner::showContextMenu(QContextMenuEvent *e, bool showFromTouch) { if (!canBlockSender && canReport) { _menu->addAction(tr::lng_context_report_msg(tr::now), [=] { reportAsGroup(itemId); - }); + }, &st::menuIconReport); } } addSelectMessageAction(item); if (isUponSelected != -2 && canBlockSender) { _menu->addAction(tr::lng_profile_block_user(tr::now), [=] { blockSenderAsGroup(itemId); - }); + }, &st::menuIconBlock); } } else if (App::mousedItem()) { addSelectMessageAction(App::mousedItem()->data()); diff --git a/Telegram/SourceFiles/history/view/history_view_context_menu.cpp b/Telegram/SourceFiles/history/view/history_view_context_menu.cpp index c674eb413..b2f690d1f 100644 --- a/Telegram/SourceFiles/history/view/history_view_context_menu.cpp +++ b/Telegram/SourceFiles/history/view/history_view_context_menu.cpp @@ -53,6 +53,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "main/main_session_settings.h" #include "apiwrap.h" #include "facades.h" +#include "styles/style_menu_icons.h" #include #include @@ -137,13 +138,14 @@ void AddPhotoActions( App::LambdaDelayed( st::defaultDropdownMenu.menu.ripple.hideDuration, &photo->session(), - [=] { SavePhotoToFile(photo); })); + [=] { SavePhotoToFile(photo); }), + &st::menuIconSaveImage); menu->addAction(tr::lng_context_copy_image(tr::now), [=] { const auto item = photo->owner().message(contextId); if (!list->showCopyRestriction(item)) { CopyImage(photo); } - }); + }, &st::menuIconCopy); } if (photo->hasAttachedStickers()) { const auto controller = list->controller(); @@ -153,7 +155,8 @@ void AddPhotoActions( }; menu->addAction( tr::lng_context_attached_stickers(tr::now), - std::move(callback)); + std::move(callback), + &st::menuIconStickers); } } @@ -218,7 +221,8 @@ void AddSaveDocumentAction( App::LambdaDelayed( st::defaultDropdownMenu.menu.ripple.hideDuration, &document->session(), - save)); + save), + &st::menuIconDownload); } void AddDocumentActions( @@ -229,7 +233,7 @@ void AddDocumentActions( if (document->loading()) { menu->addAction(tr::lng_context_cancel_download(tr::now), [=] { document->cancel(); - }); + }, &st::menuIconCancel); return; } const auto contextId = item ? item->fullId() : FullMsgId(); @@ -245,12 +249,12 @@ void AddDocumentActions( if (notAutoplayedGif) { menu->addAction(tr::lng_context_open_gif(tr::now), [=] { OpenGif(list->controller(), contextId); - }); + }, &st::menuIconShowInChat); } if (document->isGifv() && !list->hasCopyRestriction(item)) { menu->addAction(tr::lng_context_save_gif(tr::now), [=] { SaveGif(list->controller(), contextId); - }); + }, &st::menuIconGif); } } if (document->sticker() && document->sticker()->set) { @@ -258,19 +262,23 @@ void AddDocumentActions( (document->isStickerSetInstalled() ? tr::lng_context_pack_info(tr::now) : tr::lng_context_pack_add(tr::now)), - [=] { ShowStickerPackInfo(document, list); }); + [=] { ShowStickerPackInfo(document, list); }, + &st::menuIconStickers); + const auto isFaved = document->owner().stickers().isFaved(document); menu->addAction( - (document->owner().stickers().isFaved(document) + (isFaved ? tr::lng_faved_stickers_remove(tr::now) : tr::lng_faved_stickers_add(tr::now)), - [=] { ToggleFavedSticker(document, contextId); }); + [=] { ToggleFavedSticker(document, contextId); }, + isFaved ? &st::menuIconUnfave : &st::menuIconFave); } if (!document->filepath(true).isEmpty()) { menu->addAction( (Platform::IsMac() ? tr::lng_context_show_in_finder(tr::now) : tr::lng_context_show_in_folder(tr::now)), - [=] { ShowInFolder(document); }); + [=] { ShowInFolder(document); }, + &st::menuIconShowInFolder); } if (document->hasAttachedStickers()) { const auto controller = list->controller(); @@ -280,7 +288,8 @@ void AddDocumentActions( }; menu->addAction( tr::lng_context_attached_stickers(tr::now), - std::move(callback)); + std::move(callback), + &st::menuIconStickers); } AddSaveDocumentAction(menu, item, document, list); } @@ -306,7 +315,8 @@ void AddPostLinkAction( (item->history()->peer->isMegagroup() ? tr::lng_context_copy_message_link : tr::lng_context_copy_post_link)(tr::now), - [=] { CopyPostLink(session, itemId, context); }); + [=] { CopyPostLink(session, itemId, context); }, + &st::menuIconLink); } MessageIdsList ExtractIdsList(const SelectedItems &items) { @@ -339,7 +349,7 @@ bool AddForwardSelectedAction( request.navigation, ExtractIdsList(request.selectedItems), callback); - }); + }, &st::menuIconForward); return true; } @@ -371,7 +381,7 @@ bool AddForwardMessageAction( ? owner->itemOrItsGroup(item) : MessageIdsList{ 1, itemId })); } - }); + }, &st::menuIconForward); return true; } @@ -419,7 +429,7 @@ bool AddSendNowSelectedAction( history, ExtractIdsList(request.selectedItems), callback); - }); + }, &st::menuIconSend); return true; } @@ -452,7 +462,7 @@ bool AddSendNowMessageAction( ? owner->itemOrItsGroup(item) : MessageIdsList{ 1, itemId })); } - }); + }, &st::menuIconSend); return true; } @@ -543,7 +553,7 @@ bool AddRescheduleAction( box->closeBox(); } }, box->lifetime()); - }); + }, &st::menuIconSchedule); return true; } @@ -567,7 +577,7 @@ bool AddReplyToMessageAction( return; } list->replyToMessageRequestNotify(item->fullId()); - }); + }, &st::menuIconReply); return true; } @@ -598,7 +608,7 @@ bool AddViewRepliesAction( const auto history = item->history(); menu->addAction(phrase, crl::guard(controller, [=] { controller->showRepliesForMessage(history, rootId); - })); + }), &st::menuIconViewReplies); return true; } @@ -621,7 +631,7 @@ bool AddEditMessageAction( return; } list->editMessageRequestNotify(item->fullId()); - }); + }, &st::menuIconEdit); return true; } @@ -648,7 +658,7 @@ bool AddPinMessageAction( const auto controller = list->controller(); menu->addAction(isPinned ? tr::lng_context_unpin_msg(tr::now) : tr::lng_context_pin_msg(tr::now), crl::guard(controller, [=] { Window::ToggleMessagePinned(controller, pinItemId, !isPinned); - })); + }), isPinned ? &st::menuIconUnpin : &st::menuIconPin); return true; } @@ -671,7 +681,7 @@ bool AddGoToMessageAction( if (item) { goToMessageClickHandler(item)->onClick(ClickContext{}); } - })); + }), &st::menuIconShowInChat); return true; } @@ -703,7 +713,7 @@ bool AddDeleteSelectedAction( list->cancelSelection(); })); request.navigation->parentController()->show(std::move(box)); - }); + }, &st::menuIconDelete); return true; } @@ -752,7 +762,8 @@ bool AddDeleteMessageAction( if (item->isUploading()) { menu->addAction( tr::lng_context_cancel_upload(tr::now), - callback); + callback, + &st::menuIconCancel); return true; } menu->addAction(Ui::DeleteMessageContextAction( @@ -795,7 +806,10 @@ void AddReportAction( : MessageIdsList{ 1, itemId })); } }); - menu->addAction(tr::lng_context_report_msg(tr::now), callback); + menu->addAction( + tr::lng_context_report_msg(tr::now), + callback, + &st::menuIconReport); } bool AddClearSelectionAction( @@ -807,7 +821,7 @@ bool AddClearSelectionAction( } menu->addAction(tr::lng_context_clear_selection(tr::now), [=] { list->cancelSelection(); - }); + }, &st::menuIconSelect); return true; } @@ -835,7 +849,7 @@ bool AddSelectMessageAction( list->selectItem(item); } } - }); + }, &st::menuIconSelect); return true; } @@ -885,7 +899,8 @@ void AddCopyLinkAction( const auto text = link->copyToClipboardText(); menu->addAction( action, - [=] { QGuiApplication::clipboard()->setText(text); }); + [=] { QGuiApplication::clipboard()->setText(text); }, + &st::menuIconCopy); } } // namespace @@ -898,7 +913,9 @@ ContextMenuRequest::ContextMenuRequest( base::unique_qptr FillContextMenu( not_null list, const ContextMenuRequest &request) { - auto result = base::make_unique_q(list); + auto result = base::make_unique_q( + list, + st::popupMenuWithIcons); const auto link = request.link; const auto view = request.view; @@ -925,7 +942,7 @@ base::unique_qptr FillContextMenu( if (!list->showCopyRestrictionForSelected()) { TextUtilities::SetClipboardText(list->getSelectedText()); } - }); + }, &st::menuIconCopy); } AddTopMessageActions(result, request, list); @@ -958,7 +975,7 @@ base::unique_qptr FillContextMenu( TextUtilities::SetClipboardText(HistoryItemText(item)); } } - }); + }, &st::menuIconCopy); } } @@ -1034,12 +1051,12 @@ void AddPollActions( if (poll->voted() && !poll->quiz()) { menu->addAction(tr::lng_polls_retract(tr::now), [=] { poll->session().api().polls().sendVotes(itemId, {}); - }); + }, &st::menuIconRetractVote); } if (item->canStopPoll()) { menu->addAction(tr::lng_polls_stop(tr::now), [=] { StopPoll(&poll->session(), itemId); - }); + }, &st::menuIconStopPoll); } } diff --git a/Telegram/SourceFiles/history/view/history_view_schedule_box.cpp b/Telegram/SourceFiles/history/view/history_view_schedule_box.cpp index 593c292a5..9c510efda 100644 --- a/Telegram/SourceFiles/history/view/history_view_schedule_box.cpp +++ b/Telegram/SourceFiles/history/view/history_view_schedule_box.cpp @@ -24,6 +24,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_info.h" #include "styles/style_layers.h" #include "styles/style_chat.h" +#include "styles/style_menu_icons.h" #include @@ -35,10 +36,13 @@ void FillSendUntilOnlineMenu( Fn callback) { const auto menu = std::make_shared>(); button->setClickedCallback([=] { - *menu = base::make_unique_q(button); + *menu = base::make_unique_q( + button, + st::popupMenuWithIcons); (*menu)->addAction( tr::lng_scheduled_send_until_online(tr::now), - std::move(callback)); + std::move(callback), + &st::menuIconSend); (*menu)->popup(QCursor::pos()); return true; }); diff --git a/Telegram/SourceFiles/history/view/history_view_top_bar_widget.cpp b/Telegram/SourceFiles/history/view/history_view_top_bar_widget.cpp index bb3682e14..c108edd1b 100644 --- a/Telegram/SourceFiles/history/view/history_view_top_bar_widget.cpp +++ b/Telegram/SourceFiles/history/view/history_view_top_bar_widget.cpp @@ -56,6 +56,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_dialogs.h" #include "styles/style_chat.h" #include "styles/style_info.h" +#include "styles/style_menu_icons.h" namespace HistoryView { namespace { @@ -280,7 +281,7 @@ void TopBarWidget::showMenu() { if (!_activeChat.key || _menu) { return; } - _menu.create(parentWidget()); + _menu.create(parentWidget(), st::dropdownMenuWithIcons); _menu->setHiddenCallback([weak = Ui::MakeWeak(this), menu = _menu.data()]{ menu->deleteLater(); if (weak && weak->_menu == menu) { @@ -300,9 +301,10 @@ void TopBarWidget::showMenu() { })); _menuToggle->installEventFilter(_menu); const auto addAction = [&]( - const QString &text, - Fn callback) { - return _menu->addAction(text, std::move(callback)); + const QString &text, + Fn callback, + const style::icon *icon) { + return _menu->addAction(text, std::move(callback), icon); }; Window::FillDialogsEntryMenu( _controller, diff --git a/Telegram/SourceFiles/info/info_wrap_widget.cpp b/Telegram/SourceFiles/info/info_wrap_widget.cpp index a9f72b9c5..bcb40f632 100644 --- a/Telegram/SourceFiles/info/info_wrap_widget.cpp +++ b/Telegram/SourceFiles/info/info_wrap_widget.cpp @@ -37,6 +37,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "lang/lang_keys.h" #include "styles/style_info.h" #include "styles/style_profile.h" +#include "styles/style_menu_icons.h" namespace Info { namespace { @@ -529,7 +530,9 @@ void WrapWidget::showTopBarMenu() { Ui::InnerDropdown::HideOption::IgnoreShow); return; } - _topBarMenu = base::make_unique_q(this); + _topBarMenu = base::make_unique_q( + this, + st::dropdownMenuWithIcons); _topBarMenu->setHiddenCallback([this] { InvokeQueued(this, [this] { _topBarMenu = nullptr; }); @@ -551,8 +554,9 @@ void WrapWidget::showTopBarMenu() { const auto addAction = [=]( const QString &text, - Fn callback) { - return _topBarMenu->addAction(text, std::move(callback)); + Fn callback, + const style::icon *icon) { + return _topBarMenu->addAction(text, std::move(callback), icon); }; if (const auto peer = key().peer()) { Window::FillDialogsEntryMenu( diff --git a/Telegram/SourceFiles/info/media/info_media_list_widget.cpp b/Telegram/SourceFiles/info/media/info_media_list_widget.cpp index 8d5594f6a..4999f2ef9 100644 --- a/Telegram/SourceFiles/info/media/info_media_list_widget.cpp +++ b/Telegram/SourceFiles/info/media/info_media_list_widget.cpp @@ -36,8 +36,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "main/main_session.h" #include "mainwidget.h" #include "mainwindow.h" -#include "styles/style_overview.h" -#include "styles/style_info.h" #include "base/platform/base_platform_info.h" #include "base/weak_ptr.h" #include "media/player/media_player_instance.h" @@ -45,6 +43,9 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "boxes/peer_list_controllers.h" #include "core/file_utilities.h" #include "facades.h" +#include "styles/style_overview.h" +#include "styles/style_info.h" +#include "styles/style_menu_icons.h" #include #include @@ -1580,14 +1581,17 @@ void ListWidget::showContextMenu( const auto itemFullId = item->fullId(); const auto owner = &session().data(); - _contextMenu = base::make_unique_q(this); + _contextMenu = base::make_unique_q( + this, + st::popupMenuWithIcons); _contextMenu->addAction( tr::lng_context_to_msg(tr::now), [=] { if (const auto item = owner->message(itemFullId)) { _controller->parentController()->showPeerHistoryAtItem(item); } - }); + }, + &st::menuIconShowInChat); auto photoLink = dynamic_cast(link.get()); auto fileLink = dynamic_cast(link.get()); @@ -1612,7 +1616,8 @@ void ListWidget::showContextMenu( tr::lng_context_cancel_download(tr::now), [document] { document->cancel(); - }); + }, + &st::menuIconCancel); } else { auto filepath = document->filepath(true); if (!filepath.isEmpty()) { @@ -1626,7 +1631,8 @@ void ListWidget::showContextMenu( (Platform::IsMac() ? tr::lng_context_show_in_finder(tr::now) : tr::lng_context_show_in_folder(tr::now)), - std::move(handler)); + std::move(handler), + &st::menuIconShowInFolder); } auto handler = App::LambdaDelayed( st::defaultDropdownMenu.menu.ripple.hideDuration, @@ -1646,7 +1652,8 @@ void ListWidget::showContextMenu( : isAudio ? tr::lng_context_save_audio_file(tr::now) : tr::lng_context_save_file(tr::now)), - std::move(handler)); + std::move(handler), + &st::menuIconDownload); } } } @@ -1658,7 +1665,8 @@ void ListWidget::showContextMenu( actionText, [text = link->copyToClipboardText()] { QGuiApplication::clipboard()->setText(text); - }); + }, + &st::menuIconCopy); } } if (overSelected == SelectionState::OverSelectedItems) { @@ -1667,20 +1675,23 @@ void ListWidget::showContextMenu( tr::lng_context_forward_selected(tr::now), crl::guard(this, [this] { forwardSelected(); - })); + }), + &st::menuIconForward); } if (canDeleteAll()) { _contextMenu->addAction( tr::lng_context_delete_selected(tr::now), crl::guard(this, [this] { deleteSelected(); - })); + }), + &st::menuIconDelete); } _contextMenu->addAction( tr::lng_context_clear_selection(tr::now), crl::guard(this, [this] { clearSelected(); - })); + }), + &st::menuIconSelect); } else { if (overSelected != SelectionState::NotOverSelectedItems) { if (item->allowsForward()) { @@ -1688,7 +1699,8 @@ void ListWidget::showContextMenu( tr::lng_context_forward_msg(tr::now), crl::guard(this, [this, universalId] { forwardItem(universalId); - })); + }), + &st::menuIconForward); } if (item->canDelete()) { _contextMenu->addAction(Ui::DeleteMessageContextAction( @@ -1710,7 +1722,8 @@ void ListWidget::showContextMenu( update(); } applyItemSelection(universalId, FullSelection); - })); + }), + &st::menuIconSelect); } } diff --git a/Telegram/SourceFiles/inline_bots/inline_bot_layout_internal.cpp b/Telegram/SourceFiles/inline_bots/inline_bot_layout_internal.cpp index 54b4b8ad9..fe73c81dd 100644 --- a/Telegram/SourceFiles/inline_bots/inline_bot_layout_internal.cpp +++ b/Telegram/SourceFiles/inline_bots/inline_bot_layout_internal.cpp @@ -128,7 +128,7 @@ void Gif::setPosition(int32 position) { void DeleteSavedGifClickHandler::onClickImpl() const { ChatHelpers::AddGifAction( - [](QString, Fn &&done) { done(); }, + [](QString, Fn &&done, const style::icon*) { done(); }, _data); } diff --git a/Telegram/SourceFiles/inline_bots/inline_results_inner.cpp b/Telegram/SourceFiles/inline_bots/inline_results_inner.cpp index 2b23004af..c1e1e8ab8 100644 --- a/Telegram/SourceFiles/inline_bots/inline_results_inner.cpp +++ b/Telegram/SourceFiles/inline_bots/inline_results_inner.cpp @@ -29,6 +29,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "ui/effects/path_shift_gradient.h" #include "history/view/history_view_cursor_state.h" #include "styles/style_chat_helpers.h" +#include "styles/style_menu_icons.h" #include @@ -296,7 +297,9 @@ void Inner::contextMenuEvent(QContextMenuEvent *e) { ? _sendMenuType() : SendMenu::Type::Disabled; - _menu = base::make_unique_q(this); + _menu = base::make_unique_q( + this, + st::popupMenuWithIcons); const auto send = [=, selected = _selected](Api::SendOptions options) { selectInlineResult(selected, options, false); @@ -309,8 +312,11 @@ void Inner::contextMenuEvent(QContextMenuEvent *e) { const auto item = _mosaic.itemAt(_selected); if (const auto previewDocument = item->getPreviewDocument()) { - auto callback = [&](const QString &text, Fn &&done) { - _menu->addAction(text, std::move(done)); + auto callback = [&]( + const QString &text, + Fn &&done, + const style::icon *icon) { + _menu->addAction(text, std::move(done), icon); }; ChatHelpers::AddGifAction(std::move(callback), previewDocument); } diff --git a/Telegram/SourceFiles/settings/settings_common.cpp b/Telegram/SourceFiles/settings/settings_common.cpp index 5bfa90bae..2d3ca3948 100644 --- a/Telegram/SourceFiles/settings/settings_common.cpp +++ b/Telegram/SourceFiles/settings/settings_common.cpp @@ -32,6 +32,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "main/main_domain.h" #include "styles/style_layers.h" #include "styles/style_settings.h" +#include "styles/style_menu_icons.h" namespace Settings { @@ -210,22 +211,25 @@ void FillMenu( if (type == Type::Chat) { addAction( tr::lng_settings_bg_theme_create(tr::now), - [=] { window->show(Box(Window::Theme::CreateBox, window)); }); + [=] { window->show(Box(Window::Theme::CreateBox, window)); }, + &st::menuIconChangeColors); } else { const auto &list = Core::App().domain().accounts(); if (list.size() < ::Main::Domain::kMaxAccounts) { addAction(tr::lng_menu_add_account(tr::now), [=] { Core::App().domain().addActivated(MTP::Environment{}); - }); + }, &st::menuIconAddAccount); } if (!controller->session().supportMode()) { addAction( tr::lng_settings_information(tr::now), - [=] { showOther(Type::Information); }); + [=] { showOther(Type::Information); }, + &st::menuIconInfo); } addAction( tr::lng_settings_logout(tr::now), - [=] { window->showLogoutConfirmation(); }); + [=] { window->showLogoutConfirmation(); }, + &st::menuIconLeave); } } diff --git a/Telegram/SourceFiles/settings/settings_common.h b/Telegram/SourceFiles/settings/settings_common.h index 1f34036f3..a6862bac7 100644 --- a/Telegram/SourceFiles/settings/settings_common.h +++ b/Telegram/SourceFiles/settings/settings_common.h @@ -108,7 +108,8 @@ not_null AddSubsectionTitle( using MenuCallback = Fn handler)>; + Fn handler, + const style::icon *icon)>; void FillMenu( not_null controller, diff --git a/Telegram/SourceFiles/ui/chat/chat.style b/Telegram/SourceFiles/ui/chat/chat.style index 7d688e711..320acaaec 100644 --- a/Telegram/SourceFiles/ui/chat/chat.style +++ b/Telegram/SourceFiles/ui/chat/chat.style @@ -8,6 +8,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL using "ui/basic.style"; using "dialogs/dialogs.style"; using "ui/widgets/widgets.style"; +using "ui/menu_icons.style"; MessageBar { title: TextStyle; @@ -904,13 +905,13 @@ defaultWhoRead: WhoRead { photoSize: 30px; photoSkip: 5px; nameLeft: 57px; - iconPosition: point(14px, 9px); - itemPadding: margins(38px, 8px, 17px, 6px); + iconPosition: point(22px, 11px); + itemPadding: margins(61px, 9px, 17px, 7px); } -whoReadMenu: PopupMenu(defaultPopupMenu) { +whoReadMenu: PopupMenu(popupMenuWithIcons) { scrollPadding: margins(0px, 6px, 0px, 6px); maxHeight: 387px; - menu: Menu(defaultMenu) { + menu: Menu(menuWithIcons) { separatorPadding: margins(0px, 6px, 0px, 8px); } } diff --git a/Telegram/SourceFiles/ui/controls/delete_message_context_action.cpp b/Telegram/SourceFiles/ui/controls/delete_message_context_action.cpp index 31c0b6bd2..aae37a921 100644 --- a/Telegram/SourceFiles/ui/controls/delete_message_context_action.cpp +++ b/Telegram/SourceFiles/ui/controls/delete_message_context_action.cpp @@ -14,6 +14,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "base/unixtime.h" #include "base/timer.h" #include "styles/style_chat.h" +#include "styles/style_menu_icons.h" namespace Ui { namespace { @@ -104,6 +105,9 @@ void ActionWithTimer::paint(Painter &p) { if (isEnabled()) { paintRipple(p, 0, 0); } + + st::menuIconDelete.paint(p, _st.itemIconPosition, width()); + p.setPen(selected ? _st.itemFgOver : _st.itemFg); _text.drawLeftElided( p, @@ -239,8 +243,8 @@ base::unique_qptr DeleteMessageContextAction( menu, tr::lng_context_delete_msg(tr::now), std::move(callback)), - nullptr, - nullptr); + &st::menuIconDelete, + &st::menuIconDelete); } return base::make_unique_q( menu, diff --git a/Telegram/SourceFiles/ui/menu_icons.style b/Telegram/SourceFiles/ui/menu_icons.style new file mode 100644 index 000000000..6e34d9617 --- /dev/null +++ b/Telegram/SourceFiles/ui/menu_icons.style @@ -0,0 +1,81 @@ +/* +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"; +using "ui/widgets/widgets.style"; + +menuWithIcons: Menu(defaultMenu) { + itemIconPosition: point(20px, 7px); + itemPadding: margins(61px, 9px, 17px, 9px); +} +popupMenuWithIcons: PopupMenu(defaultPopupMenu) { + scrollPadding: margins(0px, 5px, 0px, 5px); + menu: menuWithIcons; +} +dropdownMenuWithIcons: DropdownMenu(defaultDropdownMenu) { + wrap: InnerDropdown(defaultInnerDropdown) { + scrollPadding: margins(0px, 5px, 0px, 5px); + } + menu: menuWithIcons; +} + +menuIconReactions: icon {{ "menu/read_reactions", menuSubmenuArrowFg }}; +menuIconReply: icon {{ "menu/reply", menuSubmenuArrowFg }}; +menuIconViewReplies: icon {{ "menu/view_replies", menuSubmenuArrowFg }}; +menuIconEdit: icon {{ "menu/edit", menuSubmenuArrowFg }}; +menuIconPin: icon {{ "menu/pin", menuSubmenuArrowFg }}; +menuIconUnpin: icon {{ "menu/unpin", menuSubmenuArrowFg }}; +menuIconCopy: icon {{ "menu/copy", menuSubmenuArrowFg }}; +menuIconForward: icon {{ "menu/forward", menuSubmenuArrowFg }}; +menuIconDelete: icon {{ "menu/delete", menuSubmenuArrowFg }}; +menuIconSelect: icon {{ "menu/select", menuSubmenuArrowFg }}; +menuIconSaveImage: icon {{ "menu/save_image", menuSubmenuArrowFg }}; +menuIconStickers: icon {{ "menu/stickers", menuSubmenuArrowFg }}; +menuIconCancel: icon {{ "menu/cancel", menuSubmenuArrowFg }}; +menuIconShowInChat: icon {{ "menu/show_in_chat", menuSubmenuArrowFg }}; +menuIconGif: icon {{ "menu/gif", menuSubmenuArrowFg }}; +menuIconShowInFolder: icon {{ "menu/show_in_folder", menuSubmenuArrowFg }}; +menuIconDownload: icon {{ "menu/download", menuSubmenuArrowFg }}; +menuIconLink: icon {{ "menu/link", menuSubmenuArrowFg }}; +menuIconBlock: icon {{ "menu/block", menuSubmenuArrowFg }}; +menuIconUnblock: icon {{ "menu/unblock", menuSubmenuArrowFg }}; +menuIconRestartBot: icon {{ "menu/restart_bot", menuSubmenuArrowFg }}; +menuIconReport: icon {{ "menu/report", menuSubmenuArrowFg }}; +menuIconFave: icon {{ "menu/favorite", menuSubmenuArrowFg }}; +menuIconUnfave: icon {{ "menu/unfavorite", menuSubmenuArrowFg }}; +menuIconProfile: icon {{ "menu/profile", menuSubmenuArrowFg }}; +menuIconInfo: icon {{ "menu/info", menuSubmenuArrowFg }}; +menuIconInvite: icon {{ "menu/invite", menuSubmenuArrowFg }}; +menuIconPromote: icon {{ "menu/admin_promote", menuSubmenuArrowFg }}; +menuIconAdmin: icon {{ "menu/admin", menuSubmenuArrowFg }}; +menuIconRemove: icon {{ "menu/stop_poll", menuSubmenuArrowFg }}; +menuIconStopPoll: icon {{ "menu/stop_poll", menuSubmenuArrowFg }}; +menuIconRetractVote: icon {{ "menu/retract_vote", menuSubmenuArrowFg }}; +menuIconRestrict: icon {{ "menu/permissions", menuSubmenuArrowFg }}; +menuIconShare: icon {{ "menu/share", menuSubmenuArrowFg }}; +menuIconArchive: icon {{ "menu/archive", menuSubmenuArrowFg }}; +menuIconUnarchive: icon {{ "menu/unarchive", menuSubmenuArrowFg }}; +menuIconMarkRead: icon {{ "menu/read", menuSubmenuArrowFg }}; +menuIconMarkUnread: icon {{ "menu/unread", menuSubmenuArrowFg }}; +menuIconChangeColors: icon {{ "menu/colors", menuSubmenuArrowFg }}; +menuIconExport: icon {{ "menu/export", menuSubmenuArrowFg }}; +menuIconClear: icon {{ "menu/clear", menuSubmenuArrowFg }}; +menuIconManage: icon {{ "menu/manage", menuSubmenuArrowFg }}; +menuIconDiscussion: icon {{ "menu/discussion", menuSubmenuArrowFg }}; +menuIconLeave: icon {{ "menu/leave", menuSubmenuArrowFg }}; +menuIconCreatePoll: icon {{ "menu/create_poll", menuSubmenuArrowFg }}; +menuIconQrCode: icon {{ "menu/qr_code", menuSubmenuArrowFg }}; +menuIconExpand: icon {{ "menu/expand", menuSubmenuArrowFg }}; +menuIconCollapse: icon {{ "menu/collapse", menuSubmenuArrowFg }}; +menuIconToMainMenu: icon {{ "menu/move_to_menu", menuSubmenuArrowFg }}; +menuIconFromMainMenu: icon {{ "menu/move_from_menu", menuSubmenuArrowFg }}; +menuIconAddAccount: icon {{ "menu/add_account", menuSubmenuArrowFg }}; +menuIconMute: icon {{ "menu/mute", menuSubmenuArrowFg }}; +menuIconUnmute: icon {{ "menu/unmute", menuSubmenuArrowFg }}; +menuIconSchedule: icon {{ "menu/reschedule", menuSubmenuArrowFg }}; +menuIconSend: icon {{ "menu/send", menuSubmenuArrowFg }}; +//menuIcon: icon {{ "menu/", menuSubmenuArrowFg }}; diff --git a/Telegram/SourceFiles/window/themes/window_themes_cloud_list.cpp b/Telegram/SourceFiles/window/themes/window_themes_cloud_list.cpp index fc89a4d64..dd2cb14e6 100644 --- a/Telegram/SourceFiles/window/themes/window_themes_cloud_list.cpp +++ b/Telegram/SourceFiles/window/themes/window_themes_cloud_list.cpp @@ -29,6 +29,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_settings.h" #include "styles/style_boxes.h" #include "styles/style_chat.h" +#include "styles/style_menu_icons.h" #include #include @@ -583,21 +584,23 @@ void CloudList::showMenu(Element &element) { _contextMenu = nullptr; return; } - _contextMenu = base::make_unique_q(element.button.get()); + _contextMenu = base::make_unique_q( + element.button.get(), + st::popupMenuWithIcons); const auto cloud = element.theme; if (const auto slug = element.theme.slug; !slug.isEmpty()) { _contextMenu->addAction(tr::lng_theme_share(tr::now), [=] { QGuiApplication::clipboard()->setText( _window->session().createInternalLinkFull("addtheme/" + slug)); Ui::Toast::Show(tr::lng_background_link_copied(tr::now)); - }); + }, &st::menuIconShare); } if (cloud.documentId && cloud.createdBy == _window->session().userId() && Background()->themeObject().cloud.id == cloud.id) { _contextMenu->addAction(tr::lng_theme_edit(tr::now), [=] { StartEditor(&_window->window(), cloud); - }); + }, &st::menuIconChangeColors); } const auto id = cloud.id; _contextMenu->addAction(tr::lng_theme_delete(tr::now), [=] { @@ -621,7 +624,7 @@ void CloudList::showMenu(Element &element) { tr::lng_theme_delete_sure(tr::now), tr::lng_theme_delete(tr::now), remove)); - }); + }, &st::menuIconDelete); _contextMenu->popup(QCursor::pos()); } diff --git a/Telegram/SourceFiles/window/window_filters_menu.cpp b/Telegram/SourceFiles/window/window_filters_menu.cpp index d097a8d5d..044268dfc 100644 --- a/Telegram/SourceFiles/window/window_filters_menu.cpp +++ b/Telegram/SourceFiles/window/window_filters_menu.cpp @@ -27,6 +27,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "apiwrap.h" #include "styles/style_widgets.h" #include "styles/style_window.h" +#include "styles/style_menu_icons.h" namespace Window { namespace { @@ -307,16 +308,23 @@ void FiltersMenu::showMenu(QPoint position, FilterId id) { if (i == end(_filters)) { return; } - _popupMenu = base::make_unique_q(i->second.get()); - const auto addAction = [&](const QString &text, Fn callback) { + _popupMenu = base::make_unique_q( + i->second.get(), + st::popupMenuWithIcons); + const auto addAction = [&]( + const QString &text, + Fn callback, + const style::icon *icon) { return _popupMenu->addAction( text, - crl::guard(&_outer, std::move(callback))); + crl::guard(&_outer, std::move(callback)), + icon); }; addAction( tr::lng_filters_context_edit(tr::now), - [=] { showEditBox(id); }); + [=] { showEditBox(id); }, + &st::menuIconEdit); auto filteredChats = [=] { return _session->session().data().chatsFilters().chatsList(id); @@ -327,7 +335,8 @@ void FiltersMenu::showMenu(QPoint position, FilterId id) { addAction( tr::lng_filters_context_remove(tr::now), - [=] { showRemoveBox(id); }); + [=] { showRemoveBox(id); }, + &st::menuIconDelete); _popupMenu->popup(position); } diff --git a/Telegram/SourceFiles/window/window_main_menu.cpp b/Telegram/SourceFiles/window/window_main_menu.cpp index c56cd1bfd..16c6d4356 100644 --- a/Telegram/SourceFiles/window/window_main_menu.cpp +++ b/Telegram/SourceFiles/window/window_main_menu.cpp @@ -60,6 +60,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_boxes.h" #include "styles/style_info.h" // infoTopBarMenu #include "styles/style_layers.h" +#include "styles/style_menu_icons.h" #include #include @@ -316,11 +317,17 @@ void MainMenu::AccountButton::paintEvent(QPaintEvent *e) { void MainMenu::AccountButton::contextMenuEvent(QContextMenuEvent *e) { if (!_menu && IsAltShift(e->modifiers())) { - _menu = base::make_unique_q(this); - const auto addAction = [&](const QString &text, Fn callback) { + _menu = base::make_unique_q( + this, + st::popupMenuWithIcons); + const auto addAction = [&]( + const QString &text, + Fn callback, + const style::icon *icon) { return _menu->addAction( text, - crl::guard(this, std::move(callback))); + crl::guard(this, std::move(callback)), + icon); }; MenuAddMarkAsReadAllChatsAction(&_session->data(), addAction); _menu->popup(QCursor::pos()); @@ -329,10 +336,12 @@ void MainMenu::AccountButton::contextMenuEvent(QContextMenuEvent *e) { if (&_session->account() == &Core::App().activeAccount() || _menu) { return; } - _menu = base::make_unique_q(this); + _menu = base::make_unique_q( + this, + st::popupMenuWithIcons); _menu->addAction(tr::lng_menu_activate(tr::now), crl::guard(this, [=] { Core::App().domain().activate(&_session->account()); - })); + }), &st::menuIconProfile); _menu->addAction(tr::lng_settings_logout(tr::now), crl::guard(this, [=] { const auto session = _session; const auto callback = [=](Fn &&close) { @@ -344,7 +353,7 @@ void MainMenu::AccountButton::contextMenuEvent(QContextMenuEvent *e) { tr::lng_settings_logout(tr::now), st::attentionBoxButton, crl::guard(session, callback))); - })); + }), &st::menuIconLeave); _menu->popup(QCursor::pos()); } @@ -684,9 +693,17 @@ void MainMenu::setupArchiveButton() { } else if (which != Qt::RightButton) { return; } - _contextMenu = base::make_unique_q(this); - const auto addAction = [&](const QString &text, Fn callback) { - return _contextMenu->addAction(text, std::move(callback)); + _contextMenu = base::make_unique_q( + this, + st::popupMenuWithIcons); + const auto addAction = [&]( + const QString &text, + Fn callback, + const style::icon *icon) { + return _contextMenu->addAction( + text, + std::move(callback), + icon); }; const auto hide = [=] { @@ -694,7 +711,10 @@ void MainMenu::setupArchiveButton() { controller->session().saveSettingsDelayed(); Ui::hideSettingsAndLayer(); }; - addAction(tr::lng_context_archive_to_list(tr::now), std::move(hide)); + addAction( + tr::lng_context_archive_to_list(tr::now), + std::move(hide), + &st::menuIconFromMainMenu); MenuAddMarkAsReadChatListAction( [f = folder()] { return f->chatsList(); }, diff --git a/Telegram/SourceFiles/window/window_peer_menu.cpp b/Telegram/SourceFiles/window/window_peer_menu.cpp index 559af5834..6543a214c 100644 --- a/Telegram/SourceFiles/window/window_peer_menu.cpp +++ b/Telegram/SourceFiles/window/window_peer_menu.cpp @@ -64,6 +64,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "styles/style_layers.h" #include "styles/style_boxes.h" #include "styles/style_window.h" // st::windowMinWidth +#include "styles/style_menu_icons.h" #include @@ -324,7 +325,7 @@ void Filler::addHidePromotion() { history->session().api().request(MTPhelp_HidePromoData( history->peer->input )).send(); - }); + }, &st::menuIconRemove); } void Filler::addTogglePin() { @@ -340,7 +341,12 @@ void Filler::addTogglePin() { const auto pinToggle = [=] { TogglePinnedDialog(controller, history, filterId); }; - const auto pinAction = _addAction(pinText(), pinToggle); + const auto pinAction = _addAction( + pinText(), + pinToggle, + (history->isPinnedDialog(filterId) + ? &st::menuIconUnpin + : &st::menuIconPin)); // #TODO icons dynamic auto actionText = history->session().changes().historyUpdates( history, @@ -359,7 +365,7 @@ void Filler::addInfo() { : tr::lng_context_view_channel(tr::now)); _addAction(text, [=] { controller->showPeerInfo(peer); - }); + }, peer->isUser() ? &st::menuIconProfile : &st::menuIconInfo); } //void Filler::addSearch() { @@ -367,7 +373,7 @@ void Filler::addInfo() { // const auto peer = _peer; // _addAction(tr::lng_profile_search_messages(tr::now), [=] { // controller->content()->searchInChat(peer->owner().history(peer)); -// }); +// }, &st::menuIconSearch); //} void Filler::addToggleUnreadMark() { @@ -387,7 +393,9 @@ void Filler::addToggleUnreadMark() { history, !markAsRead); } - }); + }, (IsUnreadHistory(history) + ? &st::menuIconMarkRead + : &st::menuIconMarkUnread)); // #TODO icons dynamic auto actionText = history->session().changes().historyUpdates( history, @@ -410,7 +418,10 @@ void Filler::addToggleArchive() { const auto toggle = [=] { ToggleHistoryArchived(history, !isArchived()); }; - const auto archiveAction = _addAction(label(), toggle); + const auto archiveAction = _addAction( + label(), + toggle, // #TODO icons dynamic + isArchived() ? &st::menuIconUnarchive : &st::menuIconArchive); auto actionText = history->session().changes().historyUpdates( history, @@ -442,8 +453,12 @@ void Filler::addBlockUser(not_null user) { user, v::null, v::null)); - } - }); + } // #TODO icons dynamic + }, (!user->isBlocked() + ? &st::menuIconBlock + : user->isBot() + ? &st::menuIconRestartBot + : &st::menuIconUnblock)); auto actionText = _peer->session().changes().peerUpdates( _peer, @@ -463,25 +478,29 @@ void Filler::addUserActions(not_null user) { if (user->session().supportMode()) { _addAction("Edit support info", [=] { user->session().supportHelper().editInfo(controller, user); - }); + }, &st::menuIconEdit); } if (!user->isContact() && !user->isSelf() && !user->isBot()) { _addAction( tr::lng_info_add_as_contact(tr::now), - [=] { window->show(Box(EditContactBox, controller, user)); }); + [=] { window->show(Box(EditContactBox, controller, user)); }, + &st::menuIconInvite); } if (user->canShareThisContact()) { _addAction( tr::lng_info_share_contact(tr::now), - [=] { PeerMenuShareContactBox(controller, user); }); + [=] { PeerMenuShareContactBox(controller, user); }, + &st::menuIconShare); } if (user->isContact() && !user->isSelf()) { _addAction( tr::lng_info_edit_contact(tr::now), - [=] { window->show(Box(EditContactBox, controller, user)); }); + [=] { window->show(Box(EditContactBox, controller, user)); }, + &st::menuIconEdit); _addAction( tr::lng_info_delete_contact(tr::now), - [=] { PeerMenuDeleteContact(user); }); + [=] { PeerMenuDeleteContact(user); }, + &st::menuIconRemove); } if (user->isBot() && !user->isRepliesChat() @@ -489,26 +508,31 @@ void Filler::addUserActions(not_null user) { using AddBotToGroup = AddBotToGroupBoxController; _addAction( tr::lng_profile_invite_to_group(tr::now), - [=] { AddBotToGroup::Start(user); }); + [=] { AddBotToGroup::Start(user); }, + &st::menuIconInvite); } addPollAction(user); if (!user->isBot() && _request.section == Section::History) { _addAction( tr::lng_chat_theme_change(tr::now), - [=] { controller->toggleChooseChatTheme(user); }); + [=] { controller->toggleChooseChatTheme(user); }, + &st::menuIconChangeColors); } if (user->canExportChatHistory()) { _addAction( tr::lng_profile_export_chat(tr::now), - [=] { PeerMenuExportChat(user); }); + [=] { PeerMenuExportChat(user); }, + &st::menuIconExport); } } _addAction( tr::lng_profile_delete_conversation(tr::now), - DeleteAndLeaveHandler(user)); + DeleteAndLeaveHandler(user), + &st::menuIconDelete); _addAction( tr::lng_profile_clear_history(tr::now), - ClearHistoryHandler(user)); + ClearHistoryHandler(user), + &st::menuIconClear); if (!user->isInaccessible() && user != user->session().user() && !user->isRepliesChat() @@ -524,31 +548,35 @@ void Filler::addChatActions(not_null chat) { const auto text = tr::lng_manage_group_title(tr::now); _addAction(text, [=] { navigation->showEditPeerBox(chat); - }); + }, &st::menuIconManage); } if (chat->canAddMembers()) { _addAction( tr::lng_channel_add_members(tr::now), - [=] { AddChatMembers(navigation, chat); }); + [=] { AddChatMembers(navigation, chat); }, + &st::menuIconInvite); } addPollAction(chat); if (chat->canExportChatHistory()) { _addAction( tr::lng_profile_export_chat(tr::now), - [=] { PeerMenuExportChat(chat); }); + [=] { PeerMenuExportChat(chat); }, + &st::menuIconExport); } } _addAction( tr::lng_profile_clear_and_exit(tr::now), - DeleteAndLeaveHandler(_peer)); + DeleteAndLeaveHandler(_peer), + &st::menuIconDelete); _addAction( tr::lng_profile_clear_history(tr::now), - ClearHistoryHandler(_peer)); + ClearHistoryHandler(_peer), + &st::menuIconClear); if (_request.section != Section::ChatsList) { if (!chat->amCreator()) { _addAction(tr::lng_profile_report(tr::now), [=] { HistoryView::ShowReportPeerBox(navigation, chat); - }); + }, &st::menuIconReport); } } } @@ -568,7 +596,7 @@ void Filler::addChannelActions(not_null channel) { navigation->showPeerHistory( chat, Window::SectionShow::Way::Forward); - }); + }, &st::menuIconDiscussion); } } if (EditPeerInfoBox::Available(channel)) { @@ -577,14 +605,15 @@ void Filler::addChannelActions(not_null channel) { : tr::lng_manage_channel_title(tr::now); _addAction(text, [=] { navigation->showEditPeerBox(channel); - }); + }, &st::menuIconManage); } if (channel->canAddMembers()) { _addAction( (channel->isMegagroup() ? tr::lng_channel_add_members(tr::now) : tr::lng_channel_add_users(tr::now)), - [=] { PeerMenuAddChannelMembers(navigation, channel); }); + [=] { PeerMenuAddChannelMembers(navigation, channel); }, + &st::menuIconInvite); } addPollAction(channel); if (channel->canExportChatHistory()) { @@ -592,19 +621,24 @@ void Filler::addChannelActions(not_null channel) { (isGroup ? tr::lng_profile_export_chat(tr::now) : tr::lng_profile_export_channel(tr::now)), - [=] { PeerMenuExportChat(channel); }); + [=] { PeerMenuExportChat(channel); }, + &st::menuIconExport); } } if (channel->amIn()) { auto text = isGroup ? tr::lng_profile_leave_group(tr::now) : tr::lng_profile_leave_channel(tr::now); - _addAction(text, DeleteAndLeaveHandler(channel)); + _addAction( + text, + DeleteAndLeaveHandler(channel), + &st::menuIconLeave); if ((isGroup && !channel->isPublic()) || channel->canDeleteMessages()) { _addAction( tr::lng_profile_clear_history(tr::now), - ClearHistoryHandler(channel)); + ClearHistoryHandler(channel), + &st::menuIconClear); } } else { auto text = isGroup @@ -612,13 +646,14 @@ void Filler::addChannelActions(not_null channel) { : tr::lng_profile_join_channel(tr::now); _addAction( text, - [=] { channel->session().api().joinChannel(channel); }); + [=] { channel->session().api().joinChannel(channel); }, + &st::menuIconInvite); // #TODO icons } if (_request.section != Section::ChatsList) { if (!channel->amCreator()) { _addAction(tr::lng_profile_report(tr::now), [=] { HistoryView::ShowReportPeerBox(navigation, channel); - }); + }, &st::menuIconReport); } } } @@ -650,7 +685,10 @@ void Filler::addPollAction(not_null peer) { source, sendMenuType); }; - _addAction(tr::lng_polls_create(tr::now), std::move(callback)); + _addAction( + tr::lng_polls_create(tr::now), + std::move(callback), + &st::menuIconCreatePoll); } void Filler::fill() { @@ -705,7 +743,7 @@ void Filler::addTogglesForArchive() { _addAction(text, [=] { controller->session().settings().setArchiveCollapsed(!hidden); controller->session().saveSettingsDelayed(); - }); + }, hidden ? &st::menuIconExpand : &st::menuIconCollapse); _addAction(tr::lng_context_archive_to_menu(tr::now), [=] { Ui::Toast::Show(Ui::Toast::Config{ @@ -718,7 +756,7 @@ void Filler::addTogglesForArchive() { controller->session().settings().setArchiveInMainMenu( !controller->session().settings().archiveInMainMenu()); controller->session().saveSettingsDelayed(); - }); + }, &st::menuIconToMainMenu); MenuAddMarkAsReadChatListAction( [folder = _folder] { return folder->chatsList(); }, @@ -1215,7 +1253,9 @@ void PeerMenuAddMuteAction( } else { peer->owner().updateNotifySettings(peer, 0); } - }); + }, (peer->owner().notifyIsMuted(peer) + ? &st::menuIconUnmute + : &st::menuIconMute)); // #TODO icons dynamic auto actionText = Info::Profile::NotificationsEnabledValue( peer @@ -1241,7 +1281,8 @@ void MenuAddMarkAsReadAllChatsAction( }; addAction( tr::lng_context_mark_read_all(tr::now), - std::move(callback)); + std::move(callback), + &st::menuIconMarkRead); } void MenuAddMarkAsReadChatListAction( @@ -1267,7 +1308,8 @@ void MenuAddMarkAsReadChatListAction( }; addAction( tr::lng_context_mark_read(tr::now), - std::move(callback)); + std::move(callback), + &st::menuIconMarkRead); } void ToggleHistoryArchived(not_null history, bool archived) { diff --git a/Telegram/SourceFiles/window/window_peer_menu.h b/Telegram/SourceFiles/window/window_peer_menu.h index b0412fb5e..399fe64e2 100644 --- a/Telegram/SourceFiles/window/window_peer_menu.h +++ b/Telegram/SourceFiles/window/window_peer_menu.h @@ -37,7 +37,8 @@ class SessionNavigation; using PeerMenuCallback = Fn handler)>; + Fn handler, + const style::icon *icon)>; void FillDialogsEntryMenu( not_null controller, diff --git a/Telegram/cmake/td_ui.cmake b/Telegram/cmake/td_ui.cmake index 20d23d0d7..4f04ca58b 100644 --- a/Telegram/cmake/td_ui.cmake +++ b/Telegram/cmake/td_ui.cmake @@ -14,6 +14,7 @@ include(cmake/generate_numbers.cmake) set(style_files ui/td_common.style ui/filter_icons.style + ui/menu_icons.style ui/chat/chat.style boxes/boxes.style dialogs/dialogs.style