diff --git a/Telegram/Resources/langs/rewrites/en.json b/Telegram/Resources/langs/rewrites/en.json index 66cfd57e6..32d941c03 100644 --- a/Telegram/Resources/langs/rewrites/en.json +++ b/Telegram/Resources/langs/rewrites/en.json @@ -172,6 +172,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 b85eb88d4..2b4202777 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" @@ -978,7 +979,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 37e6fdb71..df2ee3244 100644 --- a/Telegram/SourceFiles/kotato/kotato_settings.cpp +++ b/Telegram/SourceFiles/kotato/kotato_settings.cpp @@ -459,6 +459,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 bf114dfd5..468ddcacb 100644 --- a/Telegram/SourceFiles/kotato/kotato_settings_menu.cpp +++ b/Telegram/SourceFiles/kotato/kotato_settings_menu.cpp @@ -746,6 +746,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::settingsButton + )->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);