From ab6ce1455a3f0a250ea5537329bee2fb9f63b7ae Mon Sep 17 00:00:00 2001 From: RadRussianRus Date: Sat, 10 Sep 2022 19:49:31 +0300 Subject: [PATCH] [Option][GUI] Remember image compression --- Telegram/Resources/langs/rewrites/en.json | 2 ++ Telegram/SourceFiles/boxes/send_files_box.cpp | 4 +++- Telegram/SourceFiles/kotato/kotato_settings.cpp | 3 +++ .../SourceFiles/kotato/kotato_settings_menu.cpp | 16 ++++++++++++++++ 4 files changed, 24 insertions(+), 1 deletion(-) diff --git a/Telegram/Resources/langs/rewrites/en.json b/Telegram/Resources/langs/rewrites/en.json index 414e269ba..9c4c51be6 100644 --- a/Telegram/Resources/langs/rewrites/en.json +++ b/Telegram/Resources/langs/rewrites/en.json @@ -168,6 +168,8 @@ "ktg_forward_force_old_unquoted": "Old unquoted forward method", "ktg_forward_force_old_unquoted_desc": "Old method copies messages content on client rather than server. Currently it's used only for \"Regroup media\" grouping mode, since new one doesn't support it. If for some reason unquoted forward doesn't work correctly, try switching this option.", "ktg_disable_chat_themes": "Disable chat themes", + "ktg_settings_remember_compress_images": "Remember compress images", + "ktg_settings_compress_images_default": "Compress images by default", "ktg_forward_quiz_unquoted": "Sorry, quizzes that are currently open and unvoted on cannot be forwarded unquoted.", "ktg_in_app_update_disabled": "In-app updater is disabled.", "dummy_last_string": "" diff --git a/Telegram/SourceFiles/boxes/send_files_box.cpp b/Telegram/SourceFiles/boxes/send_files_box.cpp index c9c4b25b0..ba588901f 100644 --- a/Telegram/SourceFiles/boxes/send_files_box.cpp +++ b/Telegram/SourceFiles/boxes/send_files_box.cpp @@ -7,6 +7,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL */ #include "boxes/send_files_box.h" +#include "kotato/kotato_settings.h" #include "lang/lang_keys.h" #include "storage/localstorage.h" #include "storage/storage_media_prepare.h" @@ -991,7 +992,8 @@ void SendFilesBox::saveSendWaySettings() { way.setGroupFiles(oldWay.groupFiles()); } if (_list.overrideSendImagesAsPhotos == way.sendImagesAsPhotos() - || _sendImagesAsPhotos->isHidden()) { + || _sendImagesAsPhotos->isHidden() + || !::Kotato::JsonSettings::GetBool("remember_compress_images")) { way.setSendImagesAsPhotos(oldWay.sendImagesAsPhotos()); } if (way != oldWay) { diff --git a/Telegram/SourceFiles/kotato/kotato_settings.cpp b/Telegram/SourceFiles/kotato/kotato_settings.cpp index e3fa59986..49093c793 100644 --- a/Telegram/SourceFiles/kotato/kotato_settings.cpp +++ b/Telegram/SourceFiles/kotato/kotato_settings.cpp @@ -438,6 +438,9 @@ const std::map> DefinitionMap { { "disable_chat_themes", { .type = SettingType::BoolSetting, .defaultValue = false, }}, + { "remember_compress_images", { + .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 468b0e916..365fcd08c 100644 --- a/Telegram/SourceFiles/kotato/kotato_settings_menu.cpp +++ b/Telegram/SourceFiles/kotato/kotato_settings_menu.cpp @@ -703,6 +703,22 @@ void SetupKotatoOther( }); SettingsMenuJsonSwitch(ktg_settings_call_confirm, confirm_before_calls); + SettingsMenuJsonSwitch(ktg_settings_remember_compress_images, remember_compress_images); + AddButton( + container, + rktr("ktg_settings_compress_images_default"), + st::settingsButtonNoIcon + )->toggleOn( + rpl::single(Core::App().settings().sendFilesWay().sendImagesAsPhotos()) + )->toggledValue( + ) | rpl::filter([](bool enabled) { + return (enabled != Core::App().settings().sendFilesWay().sendImagesAsPhotos()); + }) | rpl::start_with_next([](bool enabled) { + auto way = Core::App().settings().sendFilesWay(); + way.setSendImagesAsPhotos(enabled); + Core::App().settings().setSendFilesWay(way); + Core::App().saveSettingsDelayed(); + }, container->lifetime()); SettingsMenuJsonSwitch(ktg_settings_ffmpeg_multithread, ffmpeg_multithread); AddSkip(container);