From 4aafcebef509903a1e3e649ea40126a6c06c18fa Mon Sep 17 00:00:00 2001 From: John Preston Date: Tue, 25 Jan 2022 16:25:51 +0300 Subject: [PATCH] Add empty experimental settings section. --- Telegram/CMakeLists.txt | 2 + Telegram/Resources/langs/lang.strings | 3 + Telegram/SourceFiles/info/info_top_bar.cpp | 2 + .../settings/settings_advanced.cpp | 26 ++++++++- .../SourceFiles/settings/settings_advanced.h | 4 +- .../SourceFiles/settings/settings_common.cpp | 3 + .../SourceFiles/settings/settings_common.h | 1 + .../settings/settings_experimental.cpp | 56 +++++++++++++++++++ .../settings/settings_experimental.h | 25 +++++++++ .../SourceFiles/settings/settings_intro.cpp | 2 +- 10 files changed, 120 insertions(+), 4 deletions(-) create mode 100644 Telegram/SourceFiles/settings/settings_experimental.cpp create mode 100644 Telegram/SourceFiles/settings/settings_experimental.h diff --git a/Telegram/CMakeLists.txt b/Telegram/CMakeLists.txt index 58f6c99d0f..559738afd4 100644 --- a/Telegram/CMakeLists.txt +++ b/Telegram/CMakeLists.txt @@ -1027,6 +1027,8 @@ PRIVATE settings/settings_codes.h settings/settings_common.cpp settings/settings_common.h + settings/settings_experimental.cpp + settings/settings_experimental.h settings/settings_folders.cpp settings/settings_folders.h settings/settings_information.cpp diff --git a/Telegram/Resources/langs/lang.strings b/Telegram/Resources/langs/lang.strings index bee3d0f7cd..b677abe99a 100644 --- a/Telegram/Resources/langs/lang.strings +++ b/Telegram/Resources/langs/lang.strings @@ -392,6 +392,9 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL "lng_settings_section_scale" = "Interface Scale"; "lng_settings_scale_auto" = "Auto ({cur})"; +"lng_settings_experimental" = "Experimental settings"; +"lng_settings_experimental_about" = "Warning! Those are experimental settings. Some may not work. Others may break the app. Any of them may disappear in the next version without a trace. Use at your own risk."; + "lng_settings_section_chat_settings" = "Chat Settings"; "lng_settings_replace_emojis" = "Replace emoji"; "lng_settings_suggest_emoji" = "Suggest emoji replacements"; diff --git a/Telegram/SourceFiles/info/info_top_bar.cpp b/Telegram/SourceFiles/info/info_top_bar.cpp index 79186333ed..b57ffd69a3 100644 --- a/Telegram/SourceFiles/info/info_top_bar.cpp +++ b/Telegram/SourceFiles/info/info_top_bar.cpp @@ -641,6 +641,8 @@ rpl::producer TitleValue( return tr::lng_filters_title(); case Section::SettingsType::Calls: return tr::lng_settings_section_call_settings(); + case Section::SettingsType::Experimental: + return tr::lng_settings_experimental(); } Unexpected("Bad settings type in Info::TitleValue()"); diff --git a/Telegram/SourceFiles/settings/settings_advanced.cpp b/Telegram/SourceFiles/settings/settings_advanced.cpp index fd148b985a..1b86816505 100644 --- a/Telegram/SourceFiles/settings/settings_advanced.cpp +++ b/Telegram/SourceFiles/settings/settings_advanced.cpp @@ -80,7 +80,9 @@ bool HasUpdate() { return !Core::UpdaterDisabled(); } -void SetupUpdate(not_null container) { +void SetupUpdate( + not_null container, + Fn showOther) { if (!HasUpdate()) { return; } @@ -112,6 +114,24 @@ void SetupUpdate(not_null container) { tr::lng_settings_install_beta(), st::settingsButton).get(); + if (showOther) { + const auto experimental = inner->add( + object_ptr>( + inner, + object_ptr