diff --git a/Telegram/Resources/icons/settings/arrows.png b/Telegram/Resources/icons/settings/arrows.png new file mode 100644 index 000000000..ce4d5cd75 Binary files /dev/null and b/Telegram/Resources/icons/settings/arrows.png differ diff --git a/Telegram/Resources/icons/settings/arrows@2x.png b/Telegram/Resources/icons/settings/arrows@2x.png new file mode 100644 index 000000000..dcba1e4f6 Binary files /dev/null and b/Telegram/Resources/icons/settings/arrows@2x.png differ diff --git a/Telegram/Resources/icons/settings/arrows@3x.png b/Telegram/Resources/icons/settings/arrows@3x.png new file mode 100644 index 000000000..9bda1806c Binary files /dev/null and b/Telegram/Resources/icons/settings/arrows@3x.png differ diff --git a/Telegram/Resources/icons/settings/email.png b/Telegram/Resources/icons/settings/email.png new file mode 100644 index 000000000..3c95d18da Binary files /dev/null and b/Telegram/Resources/icons/settings/email.png differ diff --git a/Telegram/Resources/icons/settings/email@2x.png b/Telegram/Resources/icons/settings/email@2x.png new file mode 100644 index 000000000..8c1eac98c Binary files /dev/null and b/Telegram/Resources/icons/settings/email@2x.png differ diff --git a/Telegram/Resources/icons/settings/email@3x.png b/Telegram/Resources/icons/settings/email@3x.png new file mode 100644 index 000000000..0c6e01a0d Binary files /dev/null and b/Telegram/Resources/icons/settings/email@3x.png differ diff --git a/Telegram/Resources/icons/settings/forward.png b/Telegram/Resources/icons/settings/forward.png new file mode 100644 index 000000000..8aedeed9e Binary files /dev/null and b/Telegram/Resources/icons/settings/forward.png differ diff --git a/Telegram/Resources/icons/settings/forward@2x.png b/Telegram/Resources/icons/settings/forward@2x.png new file mode 100644 index 000000000..0cdbe6f9b Binary files /dev/null and b/Telegram/Resources/icons/settings/forward@2x.png differ diff --git a/Telegram/Resources/icons/settings/forward@3x.png b/Telegram/Resources/icons/settings/forward@3x.png new file mode 100644 index 000000000..04eb48179 Binary files /dev/null and b/Telegram/Resources/icons/settings/forward@3x.png differ diff --git a/Telegram/Resources/icons/settings/laptop.png b/Telegram/Resources/icons/settings/laptop.png new file mode 100644 index 000000000..62a1e866d Binary files /dev/null and b/Telegram/Resources/icons/settings/laptop.png differ diff --git a/Telegram/Resources/icons/settings/laptop@2x.png b/Telegram/Resources/icons/settings/laptop@2x.png new file mode 100644 index 000000000..c14f28bf3 Binary files /dev/null and b/Telegram/Resources/icons/settings/laptop@2x.png differ diff --git a/Telegram/Resources/icons/settings/laptop@3x.png b/Telegram/Resources/icons/settings/laptop@3x.png new file mode 100644 index 000000000..314dc3de7 Binary files /dev/null and b/Telegram/Resources/icons/settings/laptop@3x.png differ diff --git a/Telegram/Resources/icons/settings/minus.png b/Telegram/Resources/icons/settings/minus.png new file mode 100644 index 000000000..531e2e0b2 Binary files /dev/null and b/Telegram/Resources/icons/settings/minus.png differ diff --git a/Telegram/Resources/icons/settings/minus@2x.png b/Telegram/Resources/icons/settings/minus@2x.png new file mode 100644 index 000000000..9703085aa Binary files /dev/null and b/Telegram/Resources/icons/settings/minus@2x.png differ diff --git a/Telegram/Resources/icons/settings/minus@3x.png b/Telegram/Resources/icons/settings/minus@3x.png new file mode 100644 index 000000000..10a127ea2 Binary files /dev/null and b/Telegram/Resources/icons/settings/minus@3x.png differ diff --git a/Telegram/Resources/icons/settings/online.png b/Telegram/Resources/icons/settings/online.png new file mode 100644 index 000000000..84a2e0796 Binary files /dev/null and b/Telegram/Resources/icons/settings/online.png differ diff --git a/Telegram/Resources/icons/settings/online@2x.png b/Telegram/Resources/icons/settings/online@2x.png new file mode 100644 index 000000000..f5a6f47b2 Binary files /dev/null and b/Telegram/Resources/icons/settings/online@2x.png differ diff --git a/Telegram/Resources/icons/settings/online@3x.png b/Telegram/Resources/icons/settings/online@3x.png new file mode 100644 index 000000000..b626b15ca Binary files /dev/null and b/Telegram/Resources/icons/settings/online@3x.png differ diff --git a/Telegram/Resources/icons/settings/plus.png b/Telegram/Resources/icons/settings/plus.png new file mode 100644 index 000000000..04de61be3 Binary files /dev/null and b/Telegram/Resources/icons/settings/plus.png differ diff --git a/Telegram/Resources/icons/settings/plus@2x.png b/Telegram/Resources/icons/settings/plus@2x.png new file mode 100644 index 000000000..9a3e54740 Binary files /dev/null and b/Telegram/Resources/icons/settings/plus@2x.png differ diff --git a/Telegram/Resources/icons/settings/plus@3x.png b/Telegram/Resources/icons/settings/plus@3x.png new file mode 100644 index 000000000..91d045ee2 Binary files /dev/null and b/Telegram/Resources/icons/settings/plus@3x.png differ diff --git a/Telegram/Resources/icons/settings/timer.png b/Telegram/Resources/icons/settings/timer.png new file mode 100644 index 000000000..e6893f7c7 Binary files /dev/null and b/Telegram/Resources/icons/settings/timer.png differ diff --git a/Telegram/Resources/icons/settings/timer@2x.png b/Telegram/Resources/icons/settings/timer@2x.png new file mode 100644 index 000000000..d1c986c73 Binary files /dev/null and b/Telegram/Resources/icons/settings/timer@2x.png differ diff --git a/Telegram/Resources/icons/settings/timer@3x.png b/Telegram/Resources/icons/settings/timer@3x.png new file mode 100644 index 000000000..215564243 Binary files /dev/null and b/Telegram/Resources/icons/settings/timer@3x.png differ diff --git a/Telegram/Resources/icons/settings/video_calls.png b/Telegram/Resources/icons/settings/video_calls.png new file mode 100644 index 000000000..85fe8d4e4 Binary files /dev/null and b/Telegram/Resources/icons/settings/video_calls.png differ diff --git a/Telegram/Resources/icons/settings/video_calls@2x.png b/Telegram/Resources/icons/settings/video_calls@2x.png new file mode 100644 index 000000000..10907b17f Binary files /dev/null and b/Telegram/Resources/icons/settings/video_calls@2x.png differ diff --git a/Telegram/Resources/icons/settings/video_calls@3x.png b/Telegram/Resources/icons/settings/video_calls@3x.png new file mode 100644 index 000000000..910862b9f Binary files /dev/null and b/Telegram/Resources/icons/settings/video_calls@3x.png differ diff --git a/Telegram/SourceFiles/boxes/auto_download_box.cpp b/Telegram/SourceFiles/boxes/auto_download_box.cpp index 2908405a2..5e8262a5a 100644 --- a/Telegram/SourceFiles/boxes/auto_download_box.cpp +++ b/Telegram/SourceFiles/boxes/auto_download_box.cpp @@ -112,7 +112,7 @@ void AutoDownloadBox::setupContent() { AddButton( content, std::move(label), - st::settingsButton + st::settingsButtonNoIcon )->toggleOn( rpl::single(value > 0) )->toggledChanges( diff --git a/Telegram/SourceFiles/boxes/edit_privacy_box.cpp b/Telegram/SourceFiles/boxes/edit_privacy_box.cpp index c223e51c5..aaa57941a 100644 --- a/Telegram/SourceFiles/boxes/edit_privacy_box.cpp +++ b/Telegram/SourceFiles/boxes/edit_privacy_box.cpp @@ -201,28 +201,42 @@ Ui::Radioenum *EditPrivacyBox::AddOption( group, option, controller->optionLabel(option), - st::settingsSendType), - st::settingsSendTypePadding); + st::settingsPrivacyOption), + (st::settingsSendTypePadding + style::margins( + -st::lineWidth, + st::settingsPrivacySkipTop, + 0, + 0))); } Ui::FlatLabel *EditPrivacyBox::addLabel( not_null container, - rpl::producer text) { - const auto wrap = container->add( - object_ptr>( + rpl::producer text, + int topSkip) { + if (!text) { + return nullptr; + } + return container->add( + object_ptr( container, object_ptr( container, rpl::duplicate(text), st::boxDividerLabel), - st::settingsPrivacyEditLabelPadding)); - wrap->hide(anim::type::instant); - wrap->toggleOn(std::move( - text - ) | rpl::map([](const QString &text) { - return !text.isEmpty(); - })); - return wrap->entity(); + st::settingsDividerLabelPadding), + { 0, topSkip, 0, 0 } + )->entity(); +} + +void EditPrivacyBox::addLabelOrDivider( + not_null container, + rpl::producer text, + int topSkip) { + if (!addLabel(container, std::move(text), topSkip)) { + container->add( + object_ptr(container), + { 0, topSkip, 0, 0 }); + } } void EditPrivacyBox::setupContent() { @@ -262,13 +276,20 @@ void EditPrivacyBox::setupContent() { : tr::lng_edit_privacy_exceptions_add(tr::now); }); auto text = _controller->exceptionButtonTextKey(exception); + const auto always = (exception == Exception::Always); const auto button = content->add( object_ptr>( content, - object_ptr