diff --git a/Telegram/Resources/langs/rewrites/en.json b/Telegram/Resources/langs/rewrites/en.json index dd94d6b5b..e50ac3e25 100644 --- a/Telegram/Resources/langs/rewrites/en.json +++ b/Telegram/Resources/langs/rewrites/en.json @@ -272,5 +272,7 @@ "ktg_experimental_linux_nvidia_opengl_description": "Qt+OpenGL have problems on Linux with NVIDIA drivers.", "ktg_settings_view_profile_on_top": "Show \"View Profile\" first", "ktg_settings_view_profile_on_top_about": "This option also enables \"Add \"View Profile\"\" from TDesktop's experimental settings.", + "ktg_settings_emoji_sidebar": "Enable emoji sidebar", + "ktg_settings_emoji_sidebar_right_click": "Emoji sidebar on right click", "dummy_last_string": "" } diff --git a/Telegram/Resources/langs/rewrites/ru.json b/Telegram/Resources/langs/rewrites/ru.json index 3be9ed325..5f4c7e775 100644 --- a/Telegram/Resources/langs/rewrites/ru.json +++ b/Telegram/Resources/langs/rewrites/ru.json @@ -272,5 +272,7 @@ "ktg_experimental_linux_nvidia_opengl_description": "У Qt+OpenGL есть проблемы на Linux с драйверами NVIDIA.", "ktg_settings_view_profile_on_top": "\"Показать профиль\" первым пунктом меню", "ktg_settings_view_profile_on_top_about": "Эта настройка также включает \"Добавить \"Показать профиль\"\" из экспериментальных настроек TDesktop.", + "ktg_settings_emoji_sidebar": "Боковая панель эмодзи", + "ktg_settings_emoji_sidebar_right_click": "Открывать боковую панель эмодзи ПКМ", "dummy_last_string": "" } diff --git a/Telegram/SourceFiles/history/history_widget.cpp b/Telegram/SourceFiles/history/history_widget.cpp index 6a566d2cf..c09939134 100644 --- a/Telegram/SourceFiles/history/history_widget.cpp +++ b/Telegram/SourceFiles/history/history_widget.cpp @@ -1119,16 +1119,21 @@ void HistoryWidget::initTabbedSelector() { refreshTabbedPanel(); _tabbedSelectorToggle->addClickHandler([=] { - if (_tabbedPanel && _tabbedPanel->isHidden()) { - _tabbedPanel->showAnimated(); + if (_tabbedPanel && (_tabbedPanel->isHidden() + || ::Kotato::JsonSettings::GetBool("emoji_sidebar_right_click"))) { + _tabbedPanel->toggleAnimated(); } else { toggleTabbedSelectorMode(); } }); base::install_event_filter(_tabbedSelectorToggle, [=](not_null e) { - if (e->type() == QEvent::ContextMenu && _tabbedPanel) { - _tabbedPanel->toggleAnimated(); + if (e->type() == QEvent::ContextMenu) { + if (::Kotato::JsonSettings::GetBool("emoji_sidebar_right_click")) { + toggleTabbedSelectorMode(); + } else if (_tabbedPanel) { + _tabbedPanel->toggleAnimated(); + } return base::EventFilterResult::Cancel; } return base::EventFilterResult::Continue; @@ -4771,7 +4776,8 @@ void HistoryWidget::toggleTabbedSelectorMode() { } if (_tabbedPanel) { if (controller()->canShowThirdSection() - && !controller()->adaptive().isOneColumn()) { + && !controller()->adaptive().isOneColumn() + && ::Kotato::JsonSettings::GetBool("emoji_sidebar")) { Core::App().settings().setTabbedSelectorSectionEnabled(true); Core::App().saveSettingsDelayed(); pushTabbedSelectorToThirdSection( diff --git a/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp b/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp index 5f8a82973..3a70fed73 100644 --- a/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp +++ b/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp @@ -1567,16 +1567,21 @@ void ComposeControls::initTabbedSelector() { } base::install_event_filter(_tabbedSelectorToggle, [=](not_null e) { - if (e->type() == QEvent::ContextMenu && _tabbedPanel) { - _tabbedPanel->toggleAnimated(); + if (e->type() == QEvent::ContextMenu) { + if (::Kotato::JsonSettings::GetBool("emoji_sidebar_right_click")) { + toggleTabbedSelectorMode(); + } else if (_tabbedPanel) { + _tabbedPanel->toggleAnimated(); + } return base::EventFilterResult::Cancel; } return base::EventFilterResult::Continue; }); _tabbedSelectorToggle->addClickHandler([=] { - if (_tabbedPanel && _tabbedPanel->isHidden()) { - _tabbedPanel->showAnimated(); + if (_tabbedPanel && (_tabbedPanel->isHidden() + || ::Kotato::JsonSettings::GetBool("emoji_sidebar_right_click"))) { + _tabbedPanel->toggleAnimated(); } else { toggleTabbedSelectorMode(); } @@ -2063,7 +2068,8 @@ void ComposeControls::toggleTabbedSelectorMode() { } if (_tabbedPanel) { if (_window->canShowThirdSection() - && !_window->adaptive().isOneColumn()) { + && !_window->adaptive().isOneColumn() + && ::Kotato::JsonSettings::GetBool("emoji_sidebar")) { Core::App().settings().setTabbedSelectorSectionEnabled(true); Core::App().saveSettingsDelayed(); pushTabbedSelectorToThirdSection( diff --git a/Telegram/SourceFiles/kotato/kotato_settings.cpp b/Telegram/SourceFiles/kotato/kotato_settings.cpp index 94d98397a..b7d74b4ee 100644 --- a/Telegram/SourceFiles/kotato/kotato_settings.cpp +++ b/Telegram/SourceFiles/kotato/kotato_settings.cpp @@ -463,6 +463,12 @@ const std::map> DefinitionMap { { "view_profile_on_top", { .type = SettingType::BoolSetting, .defaultValue = false, }}, + { "emoji_sidebar", { + .type = SettingType::BoolSetting, + .defaultValue = true, }}, + { "emoji_sidebar_right_click", { + .type = SettingType::BoolSetting, + .defaultValue = false, }}, }; using OldOptionKey = QString; diff --git a/Telegram/SourceFiles/kotato/kotato_settings_menu.cpp b/Telegram/SourceFiles/kotato/kotato_settings_menu.cpp index 9cf075c19..82699df29 100644 --- a/Telegram/SourceFiles/kotato/kotato_settings_menu.cpp +++ b/Telegram/SourceFiles/kotato/kotato_settings_menu.cpp @@ -359,6 +359,13 @@ void SetupKotatoChats( AddSkip(container); AddDividerText(container, rktr("ktg_settings_view_profile_on_top_about")); AddSkip(container); + + SettingsMenuJsonSwitch(ktg_settings_emoji_sidebar, emoji_sidebar); + SettingsMenuJsonSwitch(ktg_settings_emoji_sidebar_right_click, emoji_sidebar_right_click); + + AddSkip(container); + AddDivider(container); + AddSkip(container); } void SetupKotatoMessages(not_null container) {