Moved AddSkip and AddDivier from Settings namespace to separate module.

This commit is contained in:
23rd 2023-11-14 22:12:53 +03:00
parent 497aa6dbc8
commit f6cb9072d2
69 changed files with 666 additions and 621 deletions

View file

@ -26,6 +26,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/text/text_utilities.h"
#include "ui/widgets/buttons.h"
#include "ui/filter_icons.h"
#include "ui/vertical_list.h"
#include "window/window_session_controller.h"
#include "styles/style_filter_icons.h"
#include "styles/style_layers.h"
@ -341,7 +342,7 @@ void ToggleChatsController::setupAboveWidget() {
_addedTopWidget = container->add(object_ptr<Ui::RpWidget>(container));
const auto realAbove = container->add(
object_ptr<Ui::VerticalLayout>(container));
AddDivider(realAbove);
Ui::AddDivider(realAbove);
const auto totalCount = [&] {
if (_chats.empty()) {
return _additional.size();

View file

@ -12,6 +12,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "main/main_session_settings.h"
#include "data/data_session.h"
#include "data/data_auto_download.h"
#include "ui/vertical_list.h"
#include "ui/widgets/continuous_sliders.h"
#include "ui/widgets/buttons.h"
#include "ui/wrap/vertical_layout.h"
@ -35,7 +36,6 @@ not_null<int64*> AddSizeLimitSlider(
not_null<Ui::VerticalLayout*> container,
const base::flat_map<Type, int64> &values,
int64 defaultValue) {
using namespace Settings;
using Pair = base::flat_map<Type, int64>::value_type;
const auto limits = Ui::CreateChild<rpl::event_stream<int64>>(
@ -46,7 +46,7 @@ not_null<int64*> AddSizeLimitSlider(
[](Pair pair) { return pair.second; })->second;
const auto startLimit = currentLimit ? currentLimit : defaultValue;
const auto result = Ui::CreateChild<int64>(container.get(), startLimit);
AddButtonWithLabel(
Settings::AddButtonWithLabel(
container,
tr::lng_media_size_limit(),
limits->events_starting_with_copy(

View file

@ -13,6 +13,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/chat/attach/attach_extensions.h"
#include "ui/chat/chat_theme.h"
#include "ui/ui_utility.h"
#include "ui/vertical_list.h"
#include "main/main_session.h"
#include "apiwrap.h"
#include "mtproto/sender.h"
@ -24,7 +25,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "data/data_document_media.h"
#include "boxes/background_preview_box.h"
#include "info/profile/info_profile_icon.h"
#include "settings/settings_common.h"
#include "settings/settings_common.h" // CreateButton.
#include "ui/boxes/confirm_box.h"
#include "ui/widgets/buttons.h"
#include "window/window_session_controller.h"
@ -165,7 +166,7 @@ void BackgroundBox::prepare() {
auto wrap = object_ptr<Ui::VerticalLayout>(this);
const auto container = wrap.data();
Settings::AddSkip(container);
Ui::AddSkip(container);
const auto button = container->add(Settings::CreateButton(
container,
@ -180,8 +181,8 @@ void BackgroundBox::prepare() {
chooseFromFile();
});
Settings::AddSkip(container);
Settings::AddDivider(container);
Ui::AddSkip(container);
Ui::AddDivider(container);
_inner = container->add(
object_ptr<Inner>(this, &_controller->session(), _forPeer));

View file

@ -20,6 +20,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/continuous_sliders.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "ui/ui_utility.h"
#include "history/history.h"
#include "history/history_item.h"
@ -293,7 +294,7 @@ void BackgroundPreviewBox::createDimmingSlider(bool dark) {
const auto equals = (dark == Window::Theme::IsNightMode());
const auto inner = Ui::CreateChild<Ui::VerticalLayout>(_dimmingContent);
inner->show();
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
inner,
tr::lng_background_dimming(),
style::margins(0, st::settingsSectionSkip, 0, 0),

View file

@ -19,6 +19,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/widgets/checkbox.h"
#include "ui/text/text_utilities.h"
#include "ui/vertical_list.h"
#include "main/main_session.h"
#include "core/application.h"
#include "core/core_settings.h"
@ -790,7 +791,7 @@ not_null<Ui::InputField*> CreatePollBox::setupQuestion(
using namespace Settings;
const auto session = &_controller->session();
AddSubsectionTitle(container, tr::lng_polls_create_question());
Ui::AddSubsectionTitle(container, tr::lng_polls_create_question());
const auto question = container->add(
object_ptr<Ui::InputField>(
container,
@ -841,8 +842,8 @@ not_null<Ui::InputField*> CreatePollBox::setupSolution(
const auto inner = outer->entity();
const auto session = &_controller->session();
AddSkip(inner);
AddSubsectionTitle(inner, tr::lng_polls_solution_title());
Ui::AddSkip(inner);
Ui::AddSubsectionTitle(inner, tr::lng_polls_solution_title());
const auto solution = inner->add(
object_ptr<Ui::InputField>(
inner,
@ -902,8 +903,8 @@ object_ptr<Ui::RpWidget> CreatePollBox::setupContent() {
const auto container = result.data();
const auto question = setupQuestion(container);
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
container->add(
object_ptr<Ui::FlatLabel>(
container,
@ -939,8 +940,8 @@ object_ptr<Ui::RpWidget> CreatePollBox::setupContent() {
options->focusFirst();
}, question->lifetime());
AddSkip(container);
AddSubsectionTitle(container, tr::lng_polls_create_settings());
Ui::AddSkip(container);
Ui::AddSubsectionTitle(container, tr::lng_polls_create_settings());
const auto anonymous = (!(_disabled & PollData::Flag::PublicVotes))
? container->add(

View file

@ -13,6 +13,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/text/text_utilities.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/vertical_list.h"
#include "history/history.h"
#include "boxes/peer_list_controllers.h"
#include "settings/settings_common.h"
@ -321,7 +322,7 @@ void EditPrivacyBox::setupContent() {
content->add(std::move(above));
}
AddSubsectionTitle(
Ui::AddSubsectionTitle(
content,
_controller->optionsTitleKey(),
{ 0, st::settingsPrivacySkipTop, 0, 0 });
@ -345,8 +346,8 @@ void EditPrivacyBox::setupContent() {
content->add(std::move(middle));
}
AddSkip(content);
AddSubsectionTitle(
Ui::AddSkip(content);
Ui::AddSubsectionTitle(
content,
tr::lng_edit_privacy_exceptions(),
{ 0, st::settingsPrivacySkipTop, 0, 0 });

View file

@ -21,6 +21,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/filter_icons.h"
#include "ui/filter_icon_panel.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "data/data_channel.h"
#include "data/data_chat_filters.h"
#include "data/data_peer.h"
@ -658,10 +659,10 @@ void EditFilterBox(
name->setFocusFast();
});
AddSkip(content);
AddDivider(content);
AddSkip(content);
AddSubsectionTitle(content, tr::lng_filters_include());
Ui::AddSkip(content);
Ui::AddDivider(content);
Ui::AddSkip(content);
Ui::AddSubsectionTitle(content, tr::lng_filters_include());
const auto includeAdd = AddButton(
content,
@ -676,9 +677,9 @@ void EditFilterBox(
kTypes,
&Data::ChatFilter::always);
AddSkip(content);
AddDividerText(content, tr::lng_filters_include_about());
AddSkip(content);
Ui::AddSkip(content);
Ui::AddDividerText(content, tr::lng_filters_include_about());
Ui::AddSkip(content);
auto excludeWrap = content->add(
object_ptr<Ui::SlideWrap<Ui::VerticalLayout>>(
@ -688,7 +689,7 @@ void EditFilterBox(
excludeWrap->toggleOn(state->chatlist.value() | rpl::map(!_1));
const auto excludeInner = excludeWrap->entity();
AddSubsectionTitle(excludeInner, tr::lng_filters_exclude());
Ui::AddSubsectionTitle(excludeInner, tr::lng_filters_exclude());
const auto excludeAdd = AddButton(
excludeInner,
@ -703,9 +704,9 @@ void EditFilterBox(
kExcludeTypes,
&Data::ChatFilter::never);
AddSkip(excludeInner);
AddDividerText(excludeInner, tr::lng_filters_exclude_about());
AddSkip(excludeInner);
Ui::AddSkip(excludeInner);
Ui::AddDividerText(excludeInner, tr::lng_filters_exclude_about());
Ui::AddSkip(excludeInner);
const auto collect = [=]() -> std::optional<Data::ChatFilter> {
const auto title = name->getLastText().trimmed();
@ -726,7 +727,7 @@ void EditFilterBox(
return rules.withTitle(title);
};
AddSubsectionTitle(
Ui::AddSubsectionTitle(
content,
rpl::conditional(
state->hasLinks.value(),
@ -806,8 +807,8 @@ void EditFilterBox(
}));
}));
}, createLink->lifetime());
AddSkip(content);
AddDividerText(
Ui::AddSkip(content);
Ui::AddDividerText(
content,
rpl::conditional(
state->hasLinks.value(),

View file

@ -31,6 +31,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/vertical_layout.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "window/window_session_controller.h"
#include "styles/style_info.h"
#include "styles/style_layers.h"
@ -145,7 +146,7 @@ void ChatFilterLinkBox(
st::settingsSubsectionTitlePadding.right(),
st::settingsSectionSkip * 2));
labelField->setMaxLength(kMaxLinkTitleLength);
Settings::AddDivider(container);
AddDivider(container);
box->setFocusCallback([=] {
labelField->setFocusFast();
@ -616,7 +617,7 @@ void LinkController::addLinkBlock(not_null<Ui::VerticalLayout*> container) {
&st::menuIconDelete);
return result;
};
AddSubsectionTitle(
Ui::AddSubsectionTitle(
container,
tr::lng_filters_link_subtitle(),
st::filterLinkSubsectionTitlePadding);
@ -637,11 +638,11 @@ void LinkController::addLinkBlock(not_null<Ui::VerticalLayout*> container) {
AddCopyShareLinkButtons(container, copyLink, shareLink);
AddSkip(container, st::inviteLinkJoinedRowPadding.bottom() * 2);
Ui::AddSkip(container, st::inviteLinkJoinedRowPadding.bottom() * 2);
AddSkip(container);
Ui::AddSkip(container);
AddDivider(container);
Ui::AddDivider(container);
}
void LinkController::prepare() {
@ -1152,7 +1153,7 @@ void AddFilterSubtitleWithToggles(
font->width(tr::lng_filters_by_link_select(tr::now)),
font->width(tr::lng_filters_by_link_deselect(tr::now))));
}
const auto title = Settings::AddSubsectionTitle(
const auto title = Ui::AddSubsectionTitle(
container,
std::move(text),
padding);

View file

@ -24,6 +24,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/toast/toast.h"
#include "ui/text/text_options.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "storage/localstorage.h"
#include "boxes/premium_preview_box.h"
#include "boxes/translate_box.h"
@ -34,7 +35,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "core/application.h"
#include "lang/lang_instance.h"
#include "lang/lang_cloud_manager.h"
#include "settings/settings_common.h"
#include "settings/settings_common.h" // CreateButton.
#include "spellcheck/spellcheck_types.h"
#include "window/window_session_controller.h"
#include "styles/style_layers.h"
@ -1250,10 +1251,8 @@ void LanguageBox::setupTop(not_null<Ui::VerticalLayout*> container) {
translateSkip->setClickedCallback([=] {
uiShow()->showBox(Ui::EditSkipTranslationLanguages());
});
Settings::AddSkip(container);
Settings::AddDividerText(
container,
tr::lng_translate_settings_about());
Ui::AddSkip(container);
Ui::AddDividerText(container, tr::lng_translate_settings_about());
}
void LanguageBox::keyPressEvent(QKeyEvent *e) {

View file

@ -25,6 +25,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/text/text_utilities.h"
#include "ui/widgets/buttons.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/vertical_list.h"
#include "window/window_session_controller.h"
#include "styles/style_boxes.h"
#include "styles/style_chat_helpers.h"
@ -352,7 +353,7 @@ void ChoosePeerBoxController::prepareRestrictions() {
const auto raw = above.data();
auto rows = RestrictionsList(_query);
if (!rows.empty()) {
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
raw,
tr::lng_request_peer_requirements(),
{ 0, st::membersMarginTop, 0, 0 });
@ -364,7 +365,7 @@ void ChoosePeerBoxController::prepareRestrictions() {
separator + rows.join(separator),
st::requestPeerRestriction),
{ skip, 0, skip, st::membersMarginTop });
Settings::AddDivider(raw);
Ui::AddDivider(raw);
}
const auto make = [&](tr::phrase<> text, const style::icon &st) {
auto button = raw->add(

View file

@ -11,7 +11,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/shadow.h"
#include "ui/effects/emoji_fly_animation.h"
#include "ui/abstract_button.h"
#include "ui/color_int_conversion.h"
#include "ui/vertical_list.h"
#include "data/data_channel.h"
#include "data/data_document.h"
#include "data/data_forum.h"
@ -39,7 +39,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "styles/style_dialogs.h"
#include "styles/style_chat_helpers.h"
namespace {
namespace {
constexpr auto kDefaultIconId = DocumentId(0x7FFF'FFFF'FFFF'FFFFULL);
@ -114,8 +113,6 @@ bool DefaultIconEmoji::readyInDefaultState() {
return true;
}
} // namespace
[[nodiscard]] int EditIconSize() {
const auto tag = Data::CustomEmojiManager::SizeTag::Large;
return Data::FrameSizeFromTag(tag) / style::DevicePixelRatio();
@ -479,9 +476,7 @@ void EditForumTopicBox(
}, title->lifetime());
if (!topic || !topic->isGeneral()) {
Settings::AddDividerText(
top,
tr::lng_forum_choose_title_and_icon());
Ui::AddDividerText(top, tr::lng_forum_choose_title_and_icon());
box->setScrollStyle(st::reactPanelScroll);

View file

@ -10,9 +10,10 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "lang/lang_keys.h"
#include "data/data_channel.h"
#include "data/data_chat.h"
#include "settings/settings_common.h"
#include "settings/settings_common.h" // AddButton.
#include "data/data_changes.h"
#include "ui/widgets/labels.h"
#include "ui/vertical_list.h"
#include "ui/widgets/buttons.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/text/text_utilities.h" // Ui::Text::RichLangValue
@ -267,7 +268,7 @@ void Controller::choose(not_null<ChatData*> chat) {
if (!chat) {
Assert(channel->isBroadcast());
Settings::AddSkip(above);
Ui::AddSkip(above);
Settings::AddButton(
above,
tr::lng_manage_discussion_group_create(),
@ -294,9 +295,9 @@ void Controller::choose(not_null<ChatData*> chat) {
st::infoUnlinkChatButton,
{ &st::menuIconRemove }
)->addClickHandler([=] { callback(nullptr); });
Settings::AddSkip(below);
Ui::AddSkip(below);
}
Settings::AddDividerText(
Ui::AddDividerText(
below,
(channel->isBroadcast()
? tr::lng_manage_discussion_group_posted

View file

@ -13,7 +13,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/vertical_layout.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/widgets/buttons.h"
#include "settings/settings_common.h"
#include "ui/vertical_list.h"
#include "settings/settings_common.h" // IconDescriptor.
#include "main/main_account.h"
#include "main/main_app_config.h"
#include "main/main_session.h"
@ -45,7 +46,7 @@ namespace {
struct State {
rpl::event_stream<bool> toggled;
};
Settings::AddSkip(container);
Ui::AddSkip(container);
const auto state = container->lifetime().make_state<State>();
const auto button = container->add(
EditPeerInfoBox::CreateButton(
@ -58,10 +59,8 @@ namespace {
))->toggleOn(rpl::single(
(megagroup->flags() & ChannelDataFlag::ParticipantsHidden) != 0
) | rpl::then(state->toggled.events()));
Settings::AddSkip(container);
Settings::AddDividerText(
container,
tr::lng_profile_hide_participants_about());
Ui::AddSkip(container);
Ui::AddDividerText(container, tr::lng_profile_hide_participants_about());
button->toggledValue(
) | rpl::start_with_next([=](bool toggled) {

View file

@ -37,6 +37,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/text/text_utilities.h"
#include "ui/widgets/buttons.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "window/themes/window_theme.h"
#include "window/section_widget.h"
#include "window/window_session_controller.h"
@ -812,11 +813,11 @@ void EditPeerColorBox(
{ margin, skip, margin, skip });
const auto container = box->verticalLayout();
AddDividerText(container, peer->isSelf()
Ui::AddDividerText(container, peer->isSelf()
? tr::lng_settings_color_about()
: tr::lng_settings_color_about_channel());
AddSkip(container, st::settingsColorSampleSkip);
Ui::AddSkip(container, st::settingsColorSampleSkip);
container->add(CreateEmojiIconButton(
container,
@ -826,8 +827,8 @@ void EditPeerColorBox(
state->emojiId.value(),
[=](DocumentId id) { state->emojiId = id; }));
AddSkip(container, st::settingsColorSampleSkip);
AddDividerText(container, peer->isSelf()
Ui::AddSkip(container, st::settingsColorSampleSkip);
Ui::AddDividerText(container, peer->isSelf()
? tr::lng_settings_color_emoji_about()
: tr::lng_settings_color_emoji_about_channel());

View file

@ -11,7 +11,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "api/api_peer_photo.h"
#include "api/api_user_names.h"
#include "main/main_session.h"
#include "boxes/add_contact_box.h"
#include "ui/boxes/confirm_box.h"
#include "boxes/peers/edit_participants_box.h"
#include "boxes/peers/edit_peer_color_box.h"
@ -23,10 +22,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "boxes/peers/edit_linked_chat_box.h"
#include "boxes/peers/edit_peer_requests_box.h"
#include "boxes/peers/edit_peer_reactions.h"
#include "boxes/peer_list_controllers.h"
#include "boxes/stickers_box.h"
#include "boxes/username_box.h"
#include "ui/boxes/single_choice_box.h"
#include "chat_helpers/emoji_suggestions_widget.h"
#include "core/application.h"
#include "core/core_settings.h"
@ -42,24 +39,22 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "info/profile/info_profile_values.h"
#include "lang/lang_keys.h"
#include "mtproto/sender.h"
#include "main/main_session.h"
#include "main/main_account.h"
#include "main/main_app_config.h"
#include "settings/settings_common.h"
#include "settings/settings_common.h" // IconDescriptor.
#include "ui/controls/userpic_button.h"
#include "ui/rp_widget.h"
#include "ui/vertical_list.h"
#include "ui/toast/toast.h"
#include "ui/text/text_utilities.h"
#include "ui/widgets/checkbox.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/fields/input_field.h"
#include "ui/widgets/labels.h"
#include "ui/widgets/box_content_divider.h"
#include "ui/wrap/padding_wrap.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/wrap/vertical_layout.h"
#include "window/window_session_controller.h"
#include "info/profile/info_profile_icon.h"
#include "api/api_invite_links.h"
#include "styles/style_layers.h"
#include "styles/style_menu_icons.h"
@ -87,13 +82,9 @@ void AddSkip(
not_null<Ui::VerticalLayout*> container,
int top = st::editPeerTopButtonsLayoutSkip,
int bottom = st::editPeerTopButtonsLayoutSkipToBottom) {
container->add(object_ptr<Ui::FixedHeightWidget>(
container,
top));
container->add(object_ptr<Ui::BoxContentDivider>(container));
container->add(object_ptr<Ui::FixedHeightWidget>(
container,
bottom));
Ui::AddSkip(container, top);
Ui::AddDivider(container);
Ui::AddSkip(container, bottom);
}
void AddButtonWithCount(
@ -245,10 +236,6 @@ void ShowEditPermissions(
navigation->parentController()->show(Box(std::move(createBox)));
}
} // namespace
namespace {
class Controller : public base::has_weak_ptr {
public:
Controller(
@ -591,7 +578,7 @@ object_ptr<Ui::RpWidget> Controller::createStickersEdit() {
object_ptr<Ui::VerticalLayout>(_wrap));
const auto container = result->entity();
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
container,
tr::lng_group_stickers(),
{ 0, st::settingsSubsectionTitlePadding.top() - bottomSkip, 0, 0 });
@ -606,13 +593,13 @@ object_ptr<Ui::RpWidget> Controller::createStickersEdit() {
},
{ &st::menuIconStickers });
Settings::AddSkip(container, bottomSkip);
Ui::AddSkip(container, bottomSkip);
Settings::AddDividerText(
Ui::AddDividerText(
container,
tr::lng_group_stickers_description());
Settings::AddSkip(container, bottomSkip);
Ui::AddSkip(container, bottomSkip);
return result;
}
@ -1002,12 +989,12 @@ void Controller::fillManageSection() {
if (_isBot) {
const auto &container = _controls.buttonsLayout;
AddSkip(container, 0);
::AddSkip(container, 0);
fillBotUsernamesButton();
fillBotEditIntroButton();
fillBotEditCommandsButton();
fillBotEditSettingsButton();
Settings::AddSkip(
Ui::AddSkip(
container,
st::editPeerTopButtonsLayoutSkipCustomBottom);
container->add(object_ptr<Ui::DividerLabel>(
@ -1070,7 +1057,7 @@ void Controller::fillManageSection() {
&& (channel->linkedChat()
|| (channel->isBroadcast() && channel->canEditInformation()));
AddSkip(_controls.buttonsLayout, 0);
::AddSkip(_controls.buttonsLayout, 0);
if (canEditType) {
fillPrivacyTypeButton();
@ -1099,7 +1086,7 @@ void Controller::fillManageSection() {
//|| canEditInviteLinks
|| canViewOrEditLinkedChat
|| canEditType) {
AddSkip(_controls.buttonsLayout);
::AddSkip(_controls.buttonsLayout);
}
if (canEditReactions()) {
@ -1269,7 +1256,7 @@ void Controller::fillManageSection() {
}
if (canEditStickers || canDeleteChannel) {
AddSkip(_controls.buttonsLayout);
::AddSkip(_controls.buttonsLayout);
}
if (canEditStickers) {
@ -1287,7 +1274,7 @@ void Controller::fillManageSection() {
}
if (canEditStickers || canDeleteChannel) {
AddSkip(_controls.buttonsLayout);
::AddSkip(_controls.buttonsLayout);
}
}

View file

@ -29,6 +29,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/text/text_utilities.h"
#include "ui/boxes/edit_invite_link.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "boxes/share_box.h"
#include "history/view/history_view_group_call_bar.h" // GenerateUserpics...
#include "history/history_item_helpers.h" // GetErrorTextForSending.
@ -434,7 +435,7 @@ void Controller::addHeaderBlock(not_null<Ui::VerticalLayout*> container) {
AddDeleteLinkButton(container, deleteLink);
}
AddSkip(container, st::inviteLinkJoinedRowPadding.bottom() * 2);
Ui::AddSkip(container, st::inviteLinkJoinedRowPadding.bottom() * 2);
auto grayLabelText = dataValue(
) | rpl::map([=](const LinkData &data) {
@ -472,7 +473,7 @@ void Controller::addHeaderBlock(not_null<Ui::VerticalLayout*> container) {
object_ptr<Ui::SlideWrap<>>(
container,
object_ptr<Ui::BoxContentDivider>(container)));
AddSkip(container);
Ui::AddSkip(container);
dataValue(
) | rpl::start_with_next([=](const LinkData &data) {
@ -509,15 +510,15 @@ not_null<Ui::SlideWrap<>*> Controller::addRequestedListBlock(
const auto wrap = result->entity();
// Make this container occupy full width.
wrap->add(object_ptr<Ui::RpWidget>(wrap));
AddDivider(wrap);
AddSkip(wrap);
Ui::AddDivider(wrap);
Ui::AddSkip(wrap);
auto requestedCount = dataValue(
) | rpl::filter([](const LinkData &data) {
return data.requested > 0;
}) | rpl::map([=](const LinkData &data) {
return float64(data.requested);
});
AddSubsectionTitle(
Ui::AddSubsectionTitle(
wrap,
tr::lng_group_invite_requested_full(
lt_count_decimal,
@ -588,14 +589,14 @@ void Controller::setupAboveJoinedWidget() {
if (revoked || !current.permanent) {
addHeaderBlock(container);
}
AddSubsectionTitle(
Ui::AddSubsectionTitle(
container,
tr::lng_group_invite_created_by());
AddSinglePeerRow(
container,
current.admin,
rpl::single(langDateTime(base::unixtime::parse(current.date))));
AddSkip(container, st::membersMarginBottom);
Ui::AddSkip(container, st::membersMarginBottom);
auto requestedWrap = addRequestedListBlock(container);
@ -609,8 +610,8 @@ void Controller::setupAboveJoinedWidget() {
// Make this container occupy full width.
listHeader->add(object_ptr<Ui::RpWidget>(listHeader));
AddDivider(listHeader);
AddSkip(listHeader);
Ui::AddDivider(listHeader);
Ui::AddSkip(listHeader);
auto listHeaderText = dataValue(
) | rpl::map([=](const LinkData &data) {

View file

@ -19,6 +19,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/widgets/popup_menu.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "lang/lang_keys.h"
#include "ui/boxes/confirm_box.h"
#include "boxes/peer_list_controllers.h"
@ -901,14 +902,14 @@ void ManageInviteLinksBox(
std::move(status));
}
AddSubsectionTitle(container, tr::lng_create_permanent_link_title());
Ui::AddSubsectionTitle(container, tr::lng_create_permanent_link_title());
AddPermanentLinkBlock(
show,
container,
peer,
admin,
permanentFromList->events());
AddDivider(container);
Ui::AddDivider(container);
auto otherHeader = (Ui::SlideWrap<>*)nullptr;
if (admin->isSelf()) {

View file

@ -20,7 +20,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/widgets/checkbox.h"
#include "ui/wrap/slide_wrap.h"
#include "settings/settings_common.h"
#include "ui/vertical_list.h"
#include "settings/settings_common.h" // AddButton.
#include "window/window_session_controller.h"
#include "styles/style_settings.h"
#include "styles/style_info.h"
@ -138,8 +139,8 @@ void EditAllowedReactionsBox(
}
Unexpected("Option value in EditAllowedReactionsBox.");
};
Settings::AddSkip(container);
Settings::AddDividerText(
Ui::AddSkip(container);
Ui::AddDividerText(
container,
(isGroup
? (state->option.value()
@ -157,8 +158,8 @@ void EditAllowedReactionsBox(
}
const auto reactions = wrap ? wrap->entity() : container.get();
Settings::AddSkip(reactions);
Settings::AddSubsectionTitle(
Ui::AddSkip(reactions);
Ui::AddSubsectionTitle(
reactions,
(enabled
? tr::lng_manage_peer_reactions_available()

View file

@ -29,6 +29,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "lang/lang_keys.h"
#include "mtproto/sender.h"
#include "ui/rp_widget.h"
#include "ui/vertical_list.h"
#include "ui/controls/userpic_button.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/checkbox.h"
@ -218,9 +219,9 @@ void Controller::createContent() {
object_ptr<Ui::VerticalLayout>(_wrap.get())));
const auto wrap = _controls.whoSendWrap->entity();
AddSkip(wrap);
Ui::AddSkip(wrap);
if (_dataSavedValue->hasLinkedChat) {
AddSubsectionTitle(wrap, tr::lng_manage_peer_send_title());
Ui::AddSubsectionTitle(wrap, tr::lng_manage_peer_send_title());
_controls.joinToWrite = wrap->add(EditPeerInfoBox::CreateButton(
wrap,
@ -264,16 +265,16 @@ void Controller::createContent() {
_dataSavedValue->requestToJoin = toggled;
}, wrap->lifetime());
AddSkip(wrap);
AddDividerText(
Ui::AddSkip(wrap);
Ui::AddDividerText(
wrap,
rpl::conditional(
std::move(joinToWrite),
tr::lng_manage_peer_send_approve_members_about(),
tr::lng_manage_peer_send_only_members_about()));
}
AddSkip(_wrap.get());
AddSubsectionTitle(
Ui::AddSkip(_wrap.get());
Ui::AddSubsectionTitle(
_wrap.get(),
tr::lng_manage_peer_no_forwards_title());
_controls.noForwards = _wrap->add(EditPeerInfoBox::CreateButton(
@ -289,8 +290,8 @@ void Controller::createContent() {
) | rpl::start_with_next([=](bool toggled) {
_dataSavedValue->noForwards = toggled;
}, _wrap->lifetime());
AddSkip(_wrap.get());
AddDividerText(
Ui::AddSkip(_wrap.get());
Ui::AddDividerText(
_wrap.get(),
(_isGroup
? tr::lng_manage_peer_no_forwards_about
@ -419,7 +420,7 @@ object_ptr<Ui::RpWidget> Controller::createUsernameEdit() {
const auto container = result->entity();
using namespace Settings;
AddSkip(container);
Ui::AddSkip(container);
container->add(
object_ptr<Ui::FlatLabel>(
container,
@ -453,7 +454,7 @@ object_ptr<Ui::RpWidget> Controller::createUsernameEdit() {
AddUsernameCheckLabel(container, _usernameCheckInfo.events());
AddDividerText(
Ui::AddDividerText(
container,
tr::lng_create_channel_link_about());
@ -675,7 +676,7 @@ object_ptr<Ui::RpWidget> Controller::createInviteLinkBlock() {
using namespace Settings;
if (_dataSavedValue) {
AddSkip(container);
Ui::AddSkip(container);
AddSubsectionTitle(container, tr::lng_create_permanent_link_title());
}
@ -686,9 +687,9 @@ object_ptr<Ui::RpWidget> Controller::createInviteLinkBlock() {
_peer->session().user(),
nullptr);
AddSkip(container);
Ui::AddSkip(container);
AddDividerText(
Ui::AddDividerText(
container,
((_peer->isMegagroup() || _peer->asChat())
? tr::lng_group_invite_about_permanent_group()

View file

@ -14,10 +14,10 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "data/data_user.h"
#include "lang/lang_keys.h"
#include "main/main_session.h"
#include "settings/settings_common.h"
#include "ui/boxes/confirm_box.h"
#include "ui/layers/show.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "ui/text/text_utilities.h" // Ui::Text::RichLangValue.
#include "ui/toast/toast.h"
#include "ui/widgets/buttons.h"
@ -231,7 +231,7 @@ void UsernamesList::rebuild(const Data::Usernames &usernames) {
_container = base::make_unique_q<Ui::VerticalLayout>(this);
{
Settings::AddSkip(_container);
Ui::AddSkip(_container);
_container->add(
object_ptr<Ui::FlatLabel>(
_container,
@ -364,8 +364,8 @@ void UsernamesList::rebuild(const Data::Usernames &usernames) {
}, content->lifetime());
{
Settings::AddSkip(_container);
Settings::AddDividerText(
Ui::AddSkip(_container);
Ui::AddDividerText(
_container,
_peer->isSelf()
? tr::lng_usernames_description()

View file

@ -13,6 +13,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/checkbox.h"
#include "ui/wrap/padding_wrap.h"
#include "ui/text/text_utilities.h"
#include "ui/vertical_list.h"
#include "main/main_session.h"
#include "main/main_account.h"
#include "main/main_domain.h"
@ -27,8 +28,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "data/data_folder.h"
#include "data/data_premium_limits.h"
#include "lang/lang_keys.h"
#include "settings/settings_common.h"
#include "settings/settings_premium.h"
#include "settings/settings_premium.h" // ShowPremium.
#include "base/unixtime.h"
#include "apiwrap.h"
#include "styles/style_premium.h"
@ -48,11 +48,11 @@ struct InfographicDescriptor {
bool complexRatio = false;
};
void AddSubsectionTitle(
void AddSubtitle(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> text) {
const auto &subtitlePadding = st::settingsButton.padding;
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
container,
std::move(text),
{ 0, subtitlePadding.top(), 0, -subtitlePadding.bottom() });
@ -395,7 +395,7 @@ void SimpleLimitBox(
? box->setPinnedToTopContent(object_ptr<Ui::VerticalLayout>(box))
: box->verticalLayout();
Settings::AddSkip(top, st::premiumInfographicPadding.top());
Ui::AddSkip(top, st::premiumInfographicPadding.top());
Ui::Premium::AddBubbleRow(
top,
st::defaultPremiumBubble,
@ -406,7 +406,7 @@ void SimpleLimitBox(
premiumPossible,
descriptor.phrase,
descriptor.icon);
Settings::AddSkip(top, st::premiumLineTextSkip);
Ui::AddSkip(top, st::premiumLineTextSkip);
if (premiumPossible) {
Ui::Premium::AddLimitRow(
top,
@ -417,7 +417,7 @@ void SimpleLimitBox(
(descriptor.complexRatio
? (float64(descriptor.current) / descriptor.premiumLimit)
: Ui::Premium::kLimitRowRatio));
Settings::AddSkip(top, st::premiumInfographicPadding.bottom());
Ui::AddSkip(top, st::premiumInfographicPadding.bottom());
}
box->setTitle(std::move(title));
@ -446,8 +446,8 @@ void SimpleLimitBox(
}
if (fixed) {
Settings::AddSkip(top, st::settingsButton.padding.bottom());
Settings::AddDivider(top);
Ui::AddSkip(top, st::settingsButton.padding.bottom());
Ui::AddDivider(top);
}
}
@ -552,7 +552,7 @@ void ChannelsLimitBox(
{ defaultLimit, current, premiumLimit, &st::premiumIconGroups },
true);
AddSubsectionTitle(box->verticalLayout(), tr::lng_channels_leave_title());
AddSubtitle(box->verticalLayout(), tr::lng_channels_leave_title());
const auto delegate = box->lifetime().make_state<InactiveDelegate>();
const auto controller = box->lifetime().make_state<InactiveController>(
@ -642,7 +642,7 @@ void PublicLinksLimitBox(
{ defaultLimit, current, premiumLimit, &st::premiumIconLinks },
true);
AddSubsectionTitle(box->verticalLayout(), tr::lng_links_revoke_title());
AddSubtitle(box->verticalLayout(), tr::lng_links_revoke_title());
const auto delegate = box->lifetime().make_state<InactiveDelegate>();
const auto controller = box->lifetime().make_state<PublicsController>(
@ -1067,7 +1067,7 @@ void AccountsLimitBox(
const auto top = box->verticalLayout();
const auto group = std::make_shared<Ui::RadiobuttonGroup>(0);
Settings::AddSkip(top, st::premiumInfographicPadding.top());
Ui::AddSkip(top, st::premiumInfographicPadding.top());
Ui::Premium::AddBubbleRow(
top,
st::defaultPremiumBubble,
@ -1082,7 +1082,7 @@ void AccountsLimitBox(
premiumPossible,
std::nullopt,
&st::premiumIconAccounts);
Settings::AddSkip(top, st::premiumLineTextSkip);
Ui::AddSkip(top, st::premiumLineTextSkip);
if (premiumPossible) {
Ui::Premium::AddLimitRow(
top,
@ -1090,7 +1090,7 @@ void AccountsLimitBox(
(QString::number(std::max(current, defaultLimit) + 1)
+ ((current + 1 == premiumLimit) ? "" : "+")),
QString::number(defaultLimit));
Settings::AddSkip(top, st::premiumInfographicPadding.bottom());
Ui::AddSkip(top, st::premiumInfographicPadding.bottom());
}
box->setTitle(tr::lng_accounts_limit_title());

View file

@ -32,7 +32,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/padding_wrap.h"
#include "ui/boxes/confirm_box.h"
#include "ui/painter.h"
#include "settings/settings_common.h"
#include "ui/vertical_list.h"
#include "settings/settings_premium.h"
#include "lottie/lottie_single_player.h"
#include "history/view/media/history_view_sticker.h"
@ -1488,7 +1488,7 @@ void UpgradedStoriesPreviewBox(
st::defaultPremiumLimits,
std::move(entries));
Settings::AddDividerText(
Ui::AddDividerText(
box->verticalLayout(),
tr::lng_premium_stories_about_mobile());
}

View file

@ -33,6 +33,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/vertical_layout.h"
#include "ui/animated_icon.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "window/section_widget.h"
#include "window/window_session_controller.h"
#include "styles/style_boxes.h"
@ -486,7 +487,7 @@ void ReactionsSettingsBox(
auto idValue = state->selectedId.value();
AddMessage(pinnedToTop, controller, std::move(idValue), box->width());
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
pinnedToTop,
tr::lng_settings_chat_reactions_subtitle());

View file

@ -9,7 +9,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "api/api_ringtones.h"
#include "apiwrap.h"
#include "base/base_file_utilities.h"
#include "base/call_delayed.h"
#include "base/event_filter.h"
#include "base/timer_rpl.h"
@ -30,13 +29,11 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "settings/settings_common.h"
#include "ui/boxes/confirm_box.h"
#include "ui/text/format_values.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/checkbox.h"
#include "ui/widgets/labels.h"
#include "ui/widgets/popup_menu.h"
#include "ui/widgets/scroll_area.h"
#include "ui/wrap/padding_wrap.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/vertical_list.h"
#include "styles/style_menu_icons.h"
#include "styles/style_boxes.h"
#include "styles/style_layers.h"
@ -217,7 +214,7 @@ void RingtonesBox(
}
}, box->lifetime());
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
container,
tr::lng_ringtones_box_cloud_subtitle());
@ -323,7 +320,7 @@ void RingtonesBox(
});
box->addSkip(st::ringtonesBoxSkip);
Settings::AddDividerText(container, tr::lng_ringtones_box_about());
Ui::AddDividerText(container, tr::lng_ringtones_box_about());
box->addSkip(st::ringtonesBoxSkip);

View file

@ -27,6 +27,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/vertical_layout.h"
#include "ui/layers/generic_box.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "lottie/lottie_icon.h"
#include "core/application.h"
#include "core/core_settings.h"
@ -462,9 +463,9 @@ void SessionInfoBox(
using namespace Settings;
const auto container = box->verticalLayout();
AddDivider(container);
AddSkip(container, st::sessionSubtitleSkip);
AddSubsectionTitle(container, tr::lng_sessions_info());
Ui::AddDivider(container);
Ui::AddSkip(container, st::sessionSubtitleSkip);
Ui::AddSubsectionTitle(container, tr::lng_sessions_info());
AddSessionInfoRow(
container,

View file

@ -18,12 +18,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "lang/lang_keys.h"
#include "main/main_session.h"
#include "mtproto/sender.h"
#include "settings/settings_common.h"
#include "spellcheck/platform/platform_language.h"
#include "ui/boxes/choose_language_box.h"
#include "ui/effects/loading_element.h"
#include "ui/layers/generic_box.h"
#include "ui/text/text_utilities.h"
#include "ui/vertical_list.h"
#include "ui/painter.h"
#include "ui/power_saving.h"
#include "ui/widgets/buttons.h"
@ -127,8 +127,8 @@ void TranslateBox(
const auto &stLabel = st::aboutLabel;
const auto lineHeight = stLabel.style.lineHeight;
Settings::AddSkip(container);
// Settings::AddSubsectionTitle(
Ui::AddSkip(container);
// Ui::AddSubsectionTitle(
// container,
// tr::lng_translate_box_original());
@ -181,14 +181,14 @@ void TranslateBox(
show->toggleOn(show->entity()->clicks() | rpl::map_to(false));
original->toggleOn(show->entity()->clicks() | rpl::map_to(true));
}
Settings::AddSkip(container);
Settings::AddSkip(container);
Settings::AddDivider(container);
Settings::AddSkip(container);
Ui::AddSkip(container);
Ui::AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
{
const auto padding = st::settingsSubsectionTitlePadding;
const auto subtitle = Settings::AddSubsectionTitle(
const auto subtitle = Ui::AddSubsectionTitle(
container,
state->to.value() | rpl::map(LanguageName));

View file

@ -20,6 +20,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "settings/settings_common.h"
#include "ui/layers/generic_box.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "ui/text/text_utilities.h"
#include "ui/text/text_variant.h"
#include "ui/toast/toast.h"
@ -409,11 +410,11 @@ void AddUsernameCheckLabel(
const auto skip = (st::usernameSkip - st.style.font->height) / 4;
auto wrapped = object_ptr<Ui::VerticalLayout>(container);
Settings::AddSkip(wrapped, skip);
Ui::AddSkip(wrapped, skip);
const auto label = wrapped->add(object_ptr<Ui::FlatLabel>(wrapped, st));
Settings::AddSkip(wrapped, skip);
Ui::AddSkip(wrapped, skip);
Settings::AddSkip(container, skip);
Ui::AddSkip(container, skip);
container->add(
object_ptr<Ui::FollowSlideWrap<Ui::VerticalLayout>>(
container,
@ -436,5 +437,5 @@ void AddUsernameCheckLabel(
label->setTextColorOverride(color->c);
label->resizeToWidth(w - padding.left() - padding.right());
}, label->lifetime());
Settings::AddSkip(container, skip);
Ui::AddSkip(container, skip);
}

View file

@ -13,7 +13,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "lang/lang_keys.h"
#include "main/main_account.h"
#include "main/main_session.h"
#include "settings/settings_common.h" // AddDivider.
#include "ui/boxes/confirm_box.h"
#include "ui/layers/generic_box.h"
#include "ui/text/text_utilities.h"
@ -21,6 +20,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/widgets/popup_menu.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/vertical_list.h"
#include "styles/style_boxes.h"
#include "styles/style_calls.h"
#include "styles/style_info.h"
@ -60,7 +60,7 @@ void StartWithBox(
box->setTitle(tr::lng_group_call_rtmp_title());
Settings::AddDividerText(
Ui::AddDividerText(
box->verticalLayout(),
tr::lng_group_call_rtmp_info());
@ -247,9 +247,9 @@ void StartRtmpProcess::FillRtmpRows(
QGuiApplication::clipboard()->setText(state->url.current());
showToast(tr::lng_group_call_rtmp_url_copied(tr::now));
}));
Settings::AddSkip(container, st::groupCallRtmpCopyButtonTopSkip);
Ui::AddSkip(container, st::groupCallRtmpCopyButtonTopSkip);
const auto weak = container->add(std::move(wrap), rowPadding);
Settings::AddSkip(container, st::groupCallRtmpCopyButtonBottomSkip);
Ui::AddSkip(container, st::groupCallRtmpCopyButtonBottomSkip);
button->heightValue(
) | rpl::start_with_next([=](int height) {
weak->resize(weak->width(), height);
@ -271,7 +271,7 @@ void StartRtmpProcess::FillRtmpRows(
};
// Server URL.
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
container,
tr::lng_group_call_rtmp_url_subtitle(),
st::groupCallRtmpSubsectionTitleAddPadding,
@ -279,18 +279,18 @@ void StartRtmpProcess::FillRtmpRows(
auto urlLabelContent = state->url.value();
addLabel(std::move(urlLabelContent));
Settings::AddSkip(container, st::groupCallRtmpUrlSkip);
Ui::AddSkip(container, st::groupCallRtmpUrlSkip);
addButton(false, tr::lng_group_call_rtmp_url_copy());
//
if (divider) {
Settings::AddDivider(container);
Ui::AddDivider(container);
}
// Stream Key.
Settings::AddSkip(container, st::groupCallRtmpKeySubsectionTitleSkip);
Ui::AddSkip(container, st::groupCallRtmpKeySubsectionTitleSkip);
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
container,
tr::lng_group_call_rtmp_key_subtitle(),
st::groupCallRtmpSubsectionTitleAddPadding,

View file

@ -14,12 +14,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "calls/calls_instance.h"
#include "ui/widgets/level_meter.h"
#include "ui/widgets/continuous_sliders.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/checkbox.h"
#include "ui/widgets/fields/input_field.h"
#include "ui/widgets/popup_menu.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/text/text_utilities.h"
#include "ui/vertical_list.h"
#include "lang/lang_keys.h"
#include "boxes/share_box.h"
#include "history/view/history_view_schedule_box.h"
@ -40,7 +40,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "data/data_changes.h"
#include "core/application.h"
#include "core/core_settings.h"
#include "ui/boxes/single_choice_box.h"
#include "webrtc/webrtc_audio_input_tester.h"
#include "webrtc/webrtc_media_devices.h"
#include "settings/settings_common.h"
@ -278,7 +277,7 @@ void SettingsBox(
};
if (addCheck) {
AddSkip(layout);
Ui::AddSkip(layout);
}
const auto muteJoined = addCheck
? AddButton(
@ -287,7 +286,7 @@ void SettingsBox(
st::groupCallSettingsButton)->toggleOn(rpl::single(joinMuted))
: nullptr;
if (addCheck) {
AddSkip(layout);
Ui::AddSkip(layout);
}
AddButtonWithLabel(
@ -344,9 +343,9 @@ void SettingsBox(
}, was, state->micLevel, kMicTestAnimationDuration);
});
AddSkip(layout);
//AddDivider(layout);
//AddSkip(layout);
Ui::AddSkip(layout);
//Ui::AddDivider(layout);
//Ui::AddSkip(layout);
AddButton(
layout,
@ -577,9 +576,9 @@ void SettingsBox(
base::install_event_filter(box, std::move(boxKeyFilter)));
}
AddSkip(layout);
//AddDivider(layout);
//AddSkip(layout);
Ui::AddSkip(layout);
//Ui::AddDivider(layout);
//Ui::AddSkip(layout);
}
auto shareLink = Fn<void()>();
if (peer->isChannel()
@ -653,9 +652,9 @@ void SettingsBox(
)->addClickHandler(std::move(shareLink));
}
if (rtmp && !call->rtmpInfo().url.isEmpty()) {
AddSkip(layout);
Ui::AddSkip(layout);
addDivider();
AddSkip(layout);
Ui::AddSkip(layout);
struct State {
base::unique_qptr<Ui::PopupMenu> menu;
@ -738,7 +737,7 @@ void SettingsBox(
state->data.fire(call->rtmpInfo());
addDivider();
AddSkip(layout);
Ui::AddSkip(layout);
}
if (peer->canManageGroupCall()) {

View file

@ -35,6 +35,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/widgets/discrete_sliders.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "window/themes/window_theme.h"
#include "window/section_widget.h"
#include "window/window_session_controller.h"
@ -695,9 +696,7 @@ void DraftOptionsBox(
if (!item->originalText().empty()) {
AddFilledSkip(bottom);
Settings::AddDividerText(
bottom,
tr::lng_reply_about_quote());
Ui::AddDividerText(bottom, tr::lng_reply_about_quote());
}
};
const auto setupLinkActions = [=] {
@ -755,9 +754,7 @@ void DraftOptionsBox(
if (args.links.size() > 1) {
AddFilledSkip(bottom);
Settings::AddDividerText(
bottom,
tr::lng_link_about_choose());
Ui::AddDividerText(bottom, tr::lng_link_about_choose());
}
};

View file

@ -22,7 +22,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "lang/lang_keys.h"
#include "payments/payments_checkout_process.h" // Payments::CheckoutProcess
#include "payments/payments_form.h" // Payments::InvoicePremiumGiftCode
#include "settings/settings_common.h"
#include "settings/settings_common.h" // AddButton.
#include "settings/settings_premium.h" // Settings::ShowPremium
#include "ui/boxes/choose_date_time.h"
#include "ui/boxes/confirm_box.h"
@ -31,6 +31,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/layers/generic_box.h"
#include "ui/painter.h"
#include "ui/rect.h"
#include "ui/vertical_list.h"
#include "ui/text/format_values.h"
#include "ui/text/text_utilities.h"
#include "ui/toast/toast.h"
@ -272,7 +273,7 @@ void CreateGiveawayBox(
tr::lng_giveaway_award()));
{
const auto &padding = st::giveawayGiftCodeCoverDividerPadding;
Settings::AddSkip(box->verticalLayout(), padding.bottom());
Ui::AddSkip(box->verticalLayout(), padding.bottom());
}
const auto loading = box->addRow(
@ -282,8 +283,8 @@ void CreateGiveawayBox(
{
loading->toggle(true, anim::type::instant);
const auto container = loading->entity();
Settings::AddSkip(container);
Settings::AddSkip(container);
Ui::AddSkip(container);
Ui::AddSkip(container);
container->add(
object_ptr<Ui::CenterWrap<Ui::FlatLabel>>(
box,
@ -291,8 +292,8 @@ void CreateGiveawayBox(
box,
tr::lng_contacts_loading(),
st::giveawayLoadingLabel)));
Settings::AddSkip(container);
Settings::AddSkip(container);
Ui::AddSkip(container);
Ui::AddSkip(container);
}
const auto contentWrap = box->verticalLayout()->add(
object_ptr<Ui::SlideWrap<Ui::VerticalLayout>>(
@ -384,9 +385,9 @@ void CreateGiveawayBox(
{
const auto &padding = st::giveawayGiftCodeTypeDividerPadding;
Settings::AddSkip(contentWrap->entity(), padding.top());
Settings::AddDivider(contentWrap->entity());
Settings::AddSkip(contentWrap->entity(), padding.bottom());
Ui::AddSkip(contentWrap->entity(), padding.top());
Ui::AddDivider(contentWrap->entity());
Ui::AddSkip(contentWrap->entity(), padding.bottom());
}
const auto randomWrap = contentWrap->entity()->add(
@ -415,7 +416,7 @@ void CreateGiveawayBox(
return;
}
state->sliderValue = availablePresets.front();
const auto title = Settings::AddSubsectionTitle(
const auto title = Ui::AddSubsectionTitle(
sliderContainer,
tr::lng_giveaway_quantity_title());
const auto rightLabel = Ui::CreateChild<Ui::FlatLabel>(
@ -443,7 +444,7 @@ void CreateGiveawayBox(
}, rightLabel->lifetime());
const auto &padding = st::giveawayGiftCodeSliderPadding;
Settings::AddSkip(sliderContainer, padding.top());
Ui::AddSkip(sliderContainer, padding.top());
class Slider : public Ui::MediaSlider {
public:
@ -459,7 +460,7 @@ void CreateGiveawayBox(
const auto slider = sliderContainer->add(
object_ptr<Slider>(sliderContainer, st::settingsScale),
st::boxRowPadding);
Settings::AddSkip(sliderContainer, padding.bottom());
Ui::AddSkip(sliderContainer, padding.bottom());
slider->resize(slider->width(), st::settingsScale.seekSize.height());
slider->setPseudoDiscrete(
availablePresets.size(),
@ -492,11 +493,11 @@ void CreateGiveawayBox(
}
}, floatLabel->lifetime());
Settings::AddSkip(sliderContainer);
Settings::AddDividerText(
Ui::AddSkip(sliderContainer);
Ui::AddDividerText(
sliderContainer,
tr::lng_giveaway_quantity_about());
Settings::AddSkip(sliderContainer);
Ui::AddSkip(sliderContainer);
sliderContainer->resizeToWidth(box->width());
};
@ -504,7 +505,7 @@ void CreateGiveawayBox(
{
const auto channelsContainer = randomWrap->entity()->add(
object_ptr<Ui::VerticalLayout>(randomWrap));
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
channelsContainer,
tr::lng_giveaway_channels_title(),
st::giveawayGiftCodeChannelsSubsectionPadding);
@ -568,18 +569,18 @@ void CreateGiveawayBox(
});
const auto &padding = st::giveawayGiftCodeChannelsDividerPadding;
Settings::AddSkip(channelsContainer, padding.top());
Settings::AddDividerText(
Ui::AddSkip(channelsContainer, padding.top());
Ui::AddDividerText(
channelsContainer,
tr::lng_giveaway_channels_about());
Settings::AddSkip(channelsContainer, padding.bottom());
Ui::AddSkip(channelsContainer, padding.bottom());
}
const auto membersGroup = std::make_shared<GiveawayGroup>();
{
const auto countriesContainer = randomWrap->entity()->add(
object_ptr<Ui::VerticalLayout>(randomWrap));
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
countriesContainer,
tr::lng_giveaway_users_title());
@ -643,11 +644,11 @@ void CreateGiveawayBox(
row->addRadio(membersGroup);
row->setClickedCallback(createCallback(GiveawayType::OnlyNewMembers));
Settings::AddSkip(countriesContainer);
Settings::AddDividerText(
Ui::AddSkip(countriesContainer);
Ui::AddDividerText(
countriesContainer,
tr::lng_giveaway_users_about());
Settings::AddSkip(countriesContainer);
Ui::AddSkip(countriesContainer);
}
const auto addTerms = [=](not_null<Ui::VerticalLayout*> c) {
@ -671,7 +672,7 @@ void CreateGiveawayBox(
{
const auto dateContainer = randomWrap->entity()->add(
object_ptr<Ui::VerticalLayout>(randomWrap));
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
dateContainer,
tr::lng_giveaway_date_title(),
st::giveawayGiftCodeChannelsSubsectionPadding);
@ -704,7 +705,7 @@ void CreateGiveawayBox(
}));
});
Settings::AddSkip(dateContainer);
Ui::AddSkip(dateContainer);
if (prepaid) {
auto terms = object_ptr<Ui::VerticalLayout>(dateContainer);
terms->add(object_ptr<Ui::FlatLabel>(
@ -713,20 +714,20 @@ void CreateGiveawayBox(
lt_count,
state->sliderValue.value() | tr::to_count()),
st::boxDividerLabel));
Settings::AddSkip(terms.data());
Settings::AddSkip(terms.data());
Ui::AddSkip(terms.data());
Ui::AddSkip(terms.data());
addTerms(terms.data());
dateContainer->add(object_ptr<Ui::DividerLabel>(
dateContainer,
std::move(terms),
st::settingsDividerLabelPadding));
} else {
Settings::AddDividerText(
Ui::AddDividerText(
dateContainer,
tr::lng_giveaway_date_about(
lt_count,
state->sliderValue.value() | tr::to_count()));
Settings::AddSkip(dateContainer);
Ui::AddSkip(dateContainer);
}
}
@ -740,7 +741,7 @@ void CreateGiveawayBox(
while (listOptions->count()) {
delete listOptions->widgetAt(0);
}
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
listOptions,
tr::lng_giveaway_duration_title(
lt_count,
@ -753,7 +754,7 @@ void CreateGiveawayBox(
st::giveawayGiftCodeGiftOption,
true);
Settings::AddSkip(listOptions);
Ui::AddSkip(listOptions);
auto termsContainer = object_ptr<Ui::VerticalLayout>(listOptions);
addTerms(termsContainer.data());

View file

@ -23,7 +23,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "info/statistics/info_statistics_inner_widget.h" // FillLoading.
#include "info/statistics/info_statistics_list_controllers.h"
#include "lang/lang_keys.h"
#include "settings/settings_common.h"
#include "statistics/widgets/chart_header_widget.h"
#include "ui/boxes/boost_box.h"
#include "ui/controls/invite_link_label.h"
@ -31,6 +30,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/empty_userpic.h"
#include "ui/painter.h"
#include "ui/rect.h"
#include "ui/vertical_list.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/discrete_sliders.h"
#include "ui/widgets/labels.h"
@ -60,9 +60,9 @@ void FillOverview(
const Data::BoostStatus &status) {
const auto &stats = status.overview;
::Settings::AddSkip(content, st::boostsLayerOverviewMargins.top());
Ui::AddSkip(content, st::boostsLayerOverviewMargins.top());
AddHeader(content, tr::lng_stats_overview_title);
::Settings::AddSkip(content);
Ui::AddSkip(content);
const auto diffBetweenHeaders = 0
+ st::statisticsOverviewValue.style.font->height
@ -157,7 +157,7 @@ void FillOverview(
topRightLabel->x(),
bottomLeftLabel->y());
}, container->lifetime());
::Settings::AddSkip(content, st::boostsLayerOverviewMargins.bottom());
Ui::AddSkip(content, st::boostsLayerOverviewMargins.bottom());
}
void FillShareLink(
@ -213,7 +213,7 @@ void FillShareLink(
}, wrap->lifetime());
wrap->showChildren();
}
::Settings::AddSkip(content, st::boostsLinkFieldPadding.bottom());
Ui::AddSkip(content, st::boostsLinkFieldPadding.bottom());
}
void FillGetBoostsButton(
@ -225,14 +225,13 @@ void FillGetBoostsButton(
if (!Api::PremiumGiftCodeOptions(peer).giveawayGiftsPurchaseAvailable()) {
return;
}
::Settings::AddSkip(content);
Ui::AddSkip(content);
const auto &st = st::getBoostsButton;
const auto &icon = st::getBoostsButtonIcon;
const auto button = content->add(
::Settings::CreateButton(
content.get(),
tr::lng_boosts_get_boosts(),
st));
const auto button = content->add(object_ptr<Ui::SettingsButton>(
content.get(),
tr::lng_boosts_get_boosts(),
st));
button->setClickedCallback([=] {
show->showBox(Box(
CreateGiveawayBox,
@ -248,8 +247,8 @@ void FillGetBoostsButton(
st::infoSharedMediaButtonIconPosition.x(),
(st.height + rect::m::sum::v(st.padding) - icon.height()) / 2,
})->show();
::Settings::AddSkip(content);
::Settings::AddDividerText(content, tr::lng_boosts_get_boosts_subtext());
Ui::AddSkip(content);
Ui::AddDividerText(content, tr::lng_boosts_get_boosts_subtext());
}
} // namespace
@ -319,16 +318,16 @@ void InnerWidget::fill() {
FillOverview(inner, status);
::Settings::AddSkip(inner);
::Settings::AddDivider(inner);
::Settings::AddSkip(inner);
Ui::AddSkip(inner);
Ui::AddDivider(inner);
Ui::AddSkip(inner);
if (!status.prepaidGiveaway.empty()) {
const auto multiplier = Api::PremiumGiftCodeOptions(_peer)
.giveawayBoostsPerPremium();
::Settings::AddSkip(inner);
Ui::AddSkip(inner);
AddHeader(inner, tr::lng_boosts_prepaid_giveaway_title);
::Settings::AddSkip(inner);
Ui::AddSkip(inner);
for (const auto &g : status.prepaidGiveaway) {
using namespace Giveaway;
const auto button = inner->add(object_ptr<GiveawayTypeRow>(
@ -361,9 +360,9 @@ void InnerWidget::fill() {
});
}
::Settings::AddSkip(inner);
::Settings::AddDivider(inner);
::Settings::AddSkip(inner);
Ui::AddSkip(inner);
Ui::AddDivider(inner);
Ui::AddSkip(inner);
}
const auto hasBoosts = (status.firstSliceBoosts.multipliedTotal > 0);
@ -406,7 +405,7 @@ void InnerWidget::fill() {
lt_count,
status.firstSliceGifts.multipliedTotal);
if (hasOneTab) {
::Settings::AddSkip(inner);
Ui::AddSkip(inner);
const auto header = inner->add(
object_ptr<Statistic::Header>(inner),
st::statisticsLayerMargins
@ -478,18 +477,18 @@ void InnerWidget::fill() {
_peer,
tr::lng_boosts_title());
::Settings::AddSkip(inner);
::Settings::AddSkip(inner);
::Settings::AddDividerText(inner, tr::lng_boosts_list_subtext());
Ui::AddSkip(inner);
Ui::AddSkip(inner);
Ui::AddDividerText(inner, tr::lng_boosts_list_subtext());
}
::Settings::AddSkip(inner);
::Settings::AddSkip(inner);
Ui::AddSkip(inner);
Ui::AddSkip(inner);
AddHeader(inner, tr::lng_boosts_link_title);
::Settings::AddSkip(inner, st::boostsLinkSkip);
Ui::AddSkip(inner, st::boostsLinkSkip);
FillShareLink(inner, _show, status.link, _peer);
::Settings::AddSkip(inner);
::Settings::AddDividerText(inner, tr::lng_boosts_link_subtext());
Ui::AddSkip(inner);
Ui::AddDividerText(inner, tr::lng_boosts_link_subtext());
FillGetBoostsButton(inner, _controller, _show, _peer, reloadOnDone);

View file

@ -16,26 +16,21 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "data/data_changes.h"
#include "data/data_user.h"
#include "data/notify/data_notify_settings.h"
#include "ui/vertical_list.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/wrap/padding_wrap.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/widgets/shadow.h"
#include "ui/widgets/labels.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/box_content_divider.h"
#include "ui/widgets/popup_menu.h"
#include "ui/boxes/report_box.h"
#include "ui/boxes/confirm_box.h"
#include "ui/layers/generic_box.h"
#include "ui/toast/toast.h"
#include "ui/text/text_utilities.h" // Ui::Text::ToUpper
#include "ui/text/text_variant.h"
#include "history/history_location_manager.h" // LocationClickHandler.
#include "history/view/history_view_context_menu.h" // HistoryView::ShowReportPeerBox
#include "boxes/abstract_box.h"
#include "boxes/peer_list_box.h"
#include "boxes/peer_list_controllers.h"
#include "boxes/add_contact_box.h"
#include "boxes/peers/add_bot_to_chat_box.h"
#include "boxes/peers/edit_contact_box.h"
#include "boxes/report_messages_box.h"
@ -58,7 +53,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "main/main_session.h"
#include "core/application.h"
#include "core/click_handler_types.h"
#include "settings/settings_common.h"
#include "apiwrap.h"
#include "api/api_blocked_peers.h"
#include "styles/style_info.h"
@ -798,11 +792,11 @@ void ActionsFiller::addInviteToGroupAction(
_wrap.data(),
object_ptr<Ui::VerticalLayout>(_wrap.data())));
about->toggleOn(InviteToChatAbout(user) | rpl::map(notEmpty));
::Settings::AddSkip(about->entity());
::Settings::AddDividerText(
Ui::AddSkip(about->entity());
Ui::AddDividerText(
about->entity(),
InviteToChatAbout(user) | rpl::filter(notEmpty));
::Settings::AddSkip(about->entity());
Ui::AddSkip(about->entity());
about->finishAnimating();
}

View file

@ -22,12 +22,13 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "lang/lang_keys.h"
#include "lottie/lottie_icon.h"
#include "main/main_session.h"
#include "settings/settings_common.h"
#include "settings/settings_common.h" // CreateLottieIcon.
#include "statistics/chart_widget.h"
#include "statistics/statistics_common.h"
#include "statistics/widgets/chart_header_widget.h"
#include "ui/layers/generic_box.h"
#include "ui/rect.h"
#include "ui/vertical_list.h"
#include "ui/toast/toast.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/popup_menu.h"
@ -114,9 +115,9 @@ void FillStatistic(
const auto &padding = st::statisticsChartEntryPadding;
const auto &m = st::statisticsLayerMargins;
const auto addSkip = [&](not_null<Ui::VerticalLayout*> c) {
::Settings::AddSkip(c, padding.bottom());
::Settings::AddDivider(c);
::Settings::AddSkip(c, padding.top());
Ui::AddSkip(c, padding.bottom());
Ui::AddDivider(c);
Ui::AddSkip(c, padding.top());
};
const auto addChart = [&](
Data::StatisticalGraph &graphData,
@ -283,9 +284,9 @@ void FillOverview(
const auto &channel = stats.channel;
const auto &supergroup = stats.supergroup;
::Settings::AddSkip(content, st::statisticsLayerOverviewMargins.top());
Ui::AddSkip(content, st::statisticsLayerOverviewMargins.top());
AddHeader(content, tr::lng_stats_overview_title, stats);
::Settings::AddSkip(content);
Ui::AddSkip(content);
struct Second final {
QColor color;
@ -457,7 +458,7 @@ void FillOverview(
topRightLabel->x(),
bottomLeftLabel->y());
}, container->lifetime());
::Settings::AddSkip(content, st::statisticsLayerOverviewMargins.bottom());
Ui::AddSkip(content, st::statisticsLayerOverviewMargins.bottom());
}
} // namespace
@ -503,7 +504,7 @@ void FillLoading(
st::statisticsLoadingSubtext)),
st::changePhoneDescriptionPadding + st::boxRowPadding);
::Settings::AddSkip(content, st::settingsBlockedListIconPadding.top());
Ui::AddSkip(content, st::settingsBlockedListIconPadding.top());
}
InnerWidget::InnerWidget(
@ -577,12 +578,12 @@ void InnerWidget::fill() {
};
if (_state.stats.message) {
if (const auto i = _peer->owner().message(_contextId)) {
::Settings::AddSkip(inner);
Ui::AddSkip(inner);
const auto preview = inner->add(
object_ptr<MessagePreview>(this, i, -1, -1, QImage()));
AddContextMenu(preview, _controller, i);
::Settings::AddSkip(inner);
::Settings::AddDivider(inner);
Ui::AddSkip(inner);
Ui::AddDivider(inner);
}
}
FillOverview(inner, _state.stats);
@ -597,10 +598,10 @@ void InnerWidget::fill() {
_showRequests.fire({ .info = peer->id });
};
const auto addSkip = [&](not_null<Ui::VerticalLayout*> c) {
::Settings::AddSkip(c);
::Settings::AddDivider(c);
::Settings::AddSkip(c);
::Settings::AddSkip(c);
Ui::AddSkip(c);
Ui::AddDivider(c);
Ui::AddSkip(c);
Ui::AddSkip(c);
};
if (!supergroup.topSenders.empty()) {
AddMembersList(
@ -653,7 +654,7 @@ void InnerWidget::fillRecentPosts() {
object_ptr<Ui::VerticalLayout>(container)));
const auto content = wrap->entity();
AddHeader(content, tr::lng_stats_recent_messages_title, { stats, {} });
::Settings::AddSkip(content);
Ui::AddSkip(content);
const auto addMessage = [=](
not_null<Ui::VerticalLayout*> messageWrap,
@ -689,7 +690,7 @@ void InnerWidget::fillRecentPosts() {
button->setClickedCallback([=, fullId = item->fullId()] {
_showRequests.fire({ .messageStatistic = fullId });
});
::Settings::AddSkip(messageWrap);
Ui::AddSkip(messageWrap);
if (!wrap->toggled()) {
wrap->toggle(true, anim::type::normal);
}

View file

@ -22,6 +22,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/empty_userpic.h"
#include "ui/painter.h"
#include "ui/rect.h"
#include "ui/vertical_list.h"
#include "ui/widgets/buttons.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/wrap/vertical_layout.h"
@ -57,11 +58,11 @@ void AddArrow(not_null<Ui::RpWidget*> parent) {
arrow->show();
}
void AddSubsectionTitle(
void AddSubtitle(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> title) {
const auto &subtitlePadding = st::settingsButton.padding;
::Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
container,
std::move(title),
{ 0, -subtitlePadding.top(), 0, -subtitlePadding.bottom() });
@ -636,7 +637,7 @@ void AddPublicForwards(
});
if (const auto total = firstSlice.total; total > 0) {
AddSubsectionTitle(
AddSubtitle(
container,
tr::lng_stats_overview_message_public_share(
lt_count_decimal,
@ -683,7 +684,7 @@ void AddMembersList(
};
const auto state = container->lifetime().make_state<State>(std::move(d));
AddSubsectionTitle(container, std::move(title));
AddSubtitle(container, std::move(title));
state->delegate.setContent(container->add(
object_ptr<PeerListContent>(container, &state->controller)));

View file

@ -15,8 +15,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/vertical_layout.h"
#include "ui/widgets/color_editor.h"
#include "ui/wrap/padding_wrap.h"
#include "settings/settings_common.h"
#include "ui/widgets/buttons.h"
#include "ui/vertical_list.h"
#include "ui/rect.h"
#include "styles/style_info_userpic_builder.h"
#include "styles/style_boxes.h"
@ -256,9 +256,9 @@ object_ptr<Ui::RpWidget> CreateGradientEditor(
preview->setDocument(document);
}
Settings::AddSkip(container);
Settings::AddDivider(container);
Settings::AddSkip(container);
Ui::AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
const auto state = container->lifetime().make_state<State>();
state->colors = std::move(startColors);
@ -267,9 +267,9 @@ object_ptr<Ui::RpWidget> CreateGradientEditor(
&state->colors));
buttonsContainer->resize(0, st::userpicBuilderEmojiAccentColorSize);
Settings::AddSkip(container);
Settings::AddDivider(container);
Settings::AddSkip(container);
Ui::AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
const auto editor = container->add(object_ptr<ColorEditor>(
container,

View file

@ -18,9 +18,10 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "main/main_account.h"
#include "main/main_app_config.h"
#include "main/main_session.h"
#include "settings/settings_common.h"
#include "settings/settings_common.h" // IconDescriptor.
#include "ui/text/text_utilities.h"
#include "ui/toast/toast.h"
#include "ui/vertical_list.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/popup_menu.h"
#include "ui/wrap/slide_wrap.h"
@ -64,7 +65,7 @@ object_ptr<Ui::RpWidget> AntiSpamValidator::createButton() const {
rpl::variable<bool> locked;
rpl::event_stream<bool> toggled;
};
Settings::AddSkip(container->entity());
Ui::AddSkip(container->entity());
const auto state = container->lifetime().make_state<State>();
const auto button = container->entity()->add(
EditPeerInfoBox::CreateButton(
@ -78,8 +79,8 @@ object_ptr<Ui::RpWidget> AntiSpamValidator::createButton() const {
_channel->antiSpamMode()
) | rpl::then(state->toggled.events()));
container->show(anim::type::instant);
Settings::AddSkip(container->entity());
Settings::AddDividerText(
Ui::AddSkip(container->entity());
Ui::AddDividerText(
container->entity(),
tr::lng_manage_peer_antispam_about());

View file

@ -8,11 +8,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "payments/ui/payments_form_summary.h"
#include "payments/ui/payments_panel_delegate.h"
#include "settings/settings_common.h"
#include "settings/settings_common.h" // AddButtonWithLabel.
#include "ui/widgets/scroll_area.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/labels.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/vertical_list.h"
#include "ui/wrap/fade_wrap.h"
#include "ui/text/format_values.h"
#include "ui/text/text_utilities.h"
@ -117,7 +118,7 @@ bool FormSummary::showCriticalError(const TextWithEntities &text) {
< st::paymentsPanelSize.height() / 2)) {
return false;
}
Settings::AddSkip(_layout.get(), st::paymentsPricesTopSkip);
Ui::AddSkip(_layout.get(), st::paymentsPricesTopSkip);
_layout->add(object_ptr<FlatLabel>(
_layout.get(),
rpl::single(text),
@ -317,15 +318,15 @@ void FormSummary::setupPrices(not_null<VerticalLayout*> layout) {
return right;
};
Settings::AddSkip(layout, st::paymentsPricesTopSkip);
Ui::AddSkip(layout, st::paymentsPricesTopSkip);
if (_invoice.receipt) {
addRow(
tr::lng_payments_date_label(tr::now),
{ langDateTime(base::unixtime::parse(_invoice.receipt.date)) },
true);
Settings::AddSkip(layout, st::paymentsPricesBottomSkip);
Settings::AddDivider(layout);
Settings::AddSkip(layout, st::paymentsPricesBottomSkip);
Ui::AddSkip(layout, st::paymentsPricesBottomSkip);
Ui::AddDivider(layout);
Ui::AddSkip(layout, st::paymentsPricesBottomSkip);
}
const auto add = [&](
@ -367,7 +368,7 @@ void FormSummary::setupPrices(not_null<VerticalLayout*> layout) {
}
add(tr::lng_payments_total_label(tr::now), total, true);
Settings::AddSkip(layout, st::paymentsPricesBottomSkip);
Ui::AddSkip(layout, st::paymentsPricesBottomSkip);
}
void FormSummary::setupSuggestedTips(not_null<VerticalLayout*> layout) {
@ -479,7 +480,7 @@ void FormSummary::setupSuggestedTips(not_null<VerticalLayout*> layout) {
}
void FormSummary::setupSections(not_null<VerticalLayout*> layout) {
Settings::AddSkip(layout, st::paymentsSectionsTopSkip);
Ui::AddSkip(layout, st::paymentsSectionsTopSkip);
const auto add = [&](
rpl::producer<QString> title,
@ -558,7 +559,7 @@ void FormSummary::setupSections(not_null<VerticalLayout*> layout) {
&st::paymentsIconPhone,
[=] { _delegate->panelEditPhone(); });
}
Settings::AddSkip(layout, st::paymentsSectionsTopSkip);
Ui::AddSkip(layout, st::paymentsSectionsTopSkip);
}
void FormSummary::setupContent(not_null<VerticalLayout*> layout) {
@ -569,9 +570,9 @@ void FormSummary::setupContent(not_null<VerticalLayout*> layout) {
setupCover(layout);
if (_invoice) {
Settings::AddDivider(layout);
Ui::AddDivider(layout);
setupPrices(layout);
Settings::AddDivider(layout);
Ui::AddDivider(layout);
setupSections(layout);
}
}

View file

@ -26,6 +26,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/fields/password_input.h"
#include "ui/widgets/labels.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/vertical_list.h"
#include "window/window_session_controller.h"
#include "styles/style_boxes.h"
#include "styles/style_layers.h"
@ -63,7 +64,7 @@ BottomButton CreateBottomDisableButton(
Fn<void()> &&callback) {
const auto content = Ui::CreateChild<Ui::VerticalLayout>(parent.get());
AddSkip(content);
Ui::AddSkip(content);
AddButton(
content,
@ -132,7 +133,7 @@ void SetupHeader(
animate(anim::repeat::once);
}, content->lifetime());
}
AddSkip(content);
Ui::AddSkip(content);
content->add(
object_ptr<Ui::CenterWrap<>>(
@ -248,7 +249,7 @@ not_null<Ui::RoundButton*> AddDoneButton(
}
void AddSkipInsteadOfField(not_null<Ui::VerticalLayout*> content) {
AddSkip(content, st::settingLocalPasscodeInputField.heightMin);
Ui::AddSkip(content, st::settingLocalPasscodeInputField.heightMin);
}
void AddSkipInsteadOfError(not_null<Ui::VerticalLayout*> content) {
@ -257,7 +258,7 @@ void AddSkipInsteadOfError(not_null<Ui::VerticalLayout*> content) {
tr::lng_language_name(tr::now),
st::settingLocalPasscodeError);
const auto &padding = st::changePhoneDescriptionPadding;
AddSkip(content, dummy->height() + padding.top() + padding.bottom());
Ui::AddSkip(content, dummy->height() + padding.top() + padding.bottom());
dummy = nullptr;
}

View file

@ -13,13 +13,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "settings/cloud_password/settings_cloud_password_common.h"
#include "settings/cloud_password/settings_cloud_password_email_confirm.h"
#include "settings/cloud_password/settings_cloud_password_manage.h"
#include "ui/vertical_list.h"
#include "ui/boxes/confirm_box.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/fields/input_field.h"
#include "ui/wrap/padding_wrap.h"
#include "ui/wrap/vertical_layout.h"
#include "window/window_session_controller.h"
#include "styles/style_boxes.h"
#include "styles/style_layers.h"
#include "styles/style_settings.h"
@ -82,7 +81,7 @@ void Email::setupContent() {
: tr::lng_settings_cloud_password_email_subtitle(),
tr::lng_settings_cloud_password_email_about());
AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
Ui::AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
const auto wrap = AddWrappedField(
content,

View file

@ -17,6 +17,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "settings/cloud_password/settings_cloud_password_input.h"
#include "settings/cloud_password/settings_cloud_password_manage.h"
#include "settings/cloud_password/settings_cloud_password_start.h"
#include "ui/vertical_list.h"
#include "ui/boxes/confirm_box.h"
#include "ui/text/format_values.h"
#include "ui/widgets/buttons.h"
@ -123,7 +124,7 @@ void EmailConfirm::setupContent() {
? recoverEmailPattern
: state->unconfirmedPattern)));
AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
Ui::AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
auto objectInput = object_ptr<Ui::SentCodeField>(
content,

View file

@ -12,6 +12,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "settings/cloud_password/settings_cloud_password_common.h"
#include "settings/cloud_password/settings_cloud_password_email.h"
#include "settings/cloud_password/settings_cloud_password_manage.h"
#include "ui/vertical_list.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/fields/input_field.h"
#include "ui/widgets/labels.h"
@ -71,7 +72,7 @@ void Hint::setupContent() {
tr::lng_settings_cloud_password_hint_subtitle(),
tr::lng_settings_cloud_password_hint_about());
AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
Ui::AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
const auto wrap = AddWrappedField(
content,

View file

@ -24,6 +24,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/fields/password_input.h"
#include "ui/widgets/labels.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/vertical_list.h"
#include "window/window_session_controller.h"
#include "styles/style_boxes.h"
#include "styles/style_layers.h"
@ -184,7 +185,7 @@ void Input::setupContent() {
: tr::lng_settings_cloud_password_password_subtitle(),
tr::lng_cloud_password_about());
AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
Ui::AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
const auto newInput = AddPasswordField(
content,
@ -322,7 +323,7 @@ void Input::setupContent() {
showBack();
});
});
AddSkip(content);
Ui::AddSkip(content);
}
if (!newInput->text().isEmpty()) {

View file

@ -10,19 +10,18 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "api/api_cloud_password.h"
#include "core/core_cloud_password.h"
#include "lang/lang_keys.h"
#include "lottie/lottie_icon.h"
#include "settings/cloud_password/settings_cloud_password_common.h"
#include "settings/cloud_password/settings_cloud_password_email_confirm.h"
#include "settings/cloud_password/settings_cloud_password_email.h"
#include "settings/cloud_password/settings_cloud_password_hint.h"
#include "settings/cloud_password/settings_cloud_password_input.h"
#include "settings/cloud_password/settings_cloud_password_start.h"
#include "ui/vertical_list.h"
#include "ui/boxes/confirm_box.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/labels.h"
#include "ui/wrap/vertical_layout.h"
#include "window/window_session_controller.h"
#include "styles/style_boxes.h"
#include "styles/style_layers.h"
#include "styles/style_menu_icons.h"
#include "styles/style_settings.h"
@ -129,7 +128,7 @@ void Manage::setupContent() {
TextWithEntities::Simple),
u"cloud_password/intro"_q);
AddSkip(content);
Ui::AddSkip(content);
AddButton(
content,
tr::lng_settings_cloud_password_manage_password_change(),
@ -152,7 +151,7 @@ void Manage::setupContent() {
showOtherAndRememberPassword(CloudPasswordEmailId());
});
AddSkip(content);
Ui::AddSkip(content);
using Divider = CloudPassword::OneEdgeBoxContentDivider;
const auto divider = Ui::CreateChild<Divider>(this);

View file

@ -10,6 +10,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "lang/lang_keys.h"
#include "settings/cloud_password/settings_cloud_password_common.h"
#include "settings/cloud_password/settings_cloud_password_input.h"
#include "ui/vertical_list.h"
#include "ui/widgets/buttons.h"
#include "ui/wrap/vertical_layout.h"
#include "styles/style_settings.h"

View file

@ -23,6 +23,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/text/format_values.h"
#include "ui/boxes/single_choice_box.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "boxes/connection_box.h"
#include "boxes/about_box.h"
#include "ui/boxes/confirm_box.h"
@ -683,7 +684,7 @@ void CheckNonEmptyOptions(
container->add(object_ptr<Ui::OverrideMargins>(
container,
std::move(wrap)));
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
}
}

View file

@ -19,6 +19,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/padding_wrap.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/vertical_list.h"
#include "window/window_session_controller.h"
#include "styles/style_settings.h"
#include "styles/style_boxes.h"
@ -74,7 +75,7 @@ rpl::producer<QString> Blocked::title() {
QPointer<Ui::RpWidget> Blocked::createPinnedToTop(not_null<QWidget*> parent) {
const auto content = Ui::CreateChild<Ui::VerticalLayout>(parent.get());
AddSkip(content);
Ui::AddSkip(content);
AddButton(
content,
@ -85,20 +86,20 @@ QPointer<Ui::RpWidget> Blocked::createPinnedToTop(not_null<QWidget*> parent) {
BlockedBoxController::BlockNewPeer(_controller);
});
AddSkip(content);
AddDividerText(content, tr::lng_blocked_list_about());
Ui::AddSkip(content);
Ui::AddDividerText(content, tr::lng_blocked_list_about());
{
const auto subtitle = content->add(
object_ptr<Ui::SlideWrap<Ui::VerticalLayout>>(
content,
object_ptr<Ui::VerticalLayout>(content)))->setDuration(0);
AddSkip(subtitle->entity());
Ui::AddSkip(subtitle->entity());
auto subtitleText = _countBlocked.value(
) | rpl::map([=](int count) {
return tr::lng_blocked_list_subtitle(tr::now, lt_count, count);
});
AddSubsectionTitle(
Ui::AddSubsectionTitle(
subtitle->entity(),
rpl::duplicate(subtitleText),
st::settingsBlockedListSubtitleAddPadding);
@ -201,7 +202,7 @@ void Blocked::setupContent() {
st::changePhoneDescription)),
st::changePhoneDescriptionPadding);
AddSkip(content, st::settingsBlockedListIconPadding.top());
Ui::AddSkip(content, st::settingsBlockedListIconPadding.top());
}
// We want minimal height to be the same no matter if subtitle

View file

@ -16,6 +16,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/boxes/single_choice_box.h"
#include "ui/boxes/confirm_box.h"
#include "ui/vertical_list.h"
#include "platform/platform_specific.h"
#include "main/main_session.h"
#include "lang/lang_keys.h"
@ -221,14 +222,14 @@ void Calls::setupContent() {
const auto content = Ui::CreateChild<Ui::VerticalLayout>(this);
if (!GetVideoInputList().empty()) {
AddSkip(content);
AddSubsectionTitle(content, tr::lng_settings_call_camera());
Ui::AddSkip(content);
Ui::AddSubsectionTitle(content, tr::lng_settings_call_camera());
AddCameraSubsection(_controller->uiShow(), content, true);
AddSkip(content);
AddDivider(content);
Ui::AddSkip(content);
Ui::AddDivider(content);
}
AddSkip(content);
AddSubsectionTitle(content, tr::lng_settings_call_section_output());
Ui::AddSkip(content);
Ui::AddSubsectionTitle(content, tr::lng_settings_call_section_output());
AddButtonWithLabel(
content,
tr::lng_settings_call_output_device(),
@ -246,10 +247,10 @@ void Calls::setupContent() {
})));
});
AddSkip(content);
AddDivider(content);
AddSkip(content);
AddSubsectionTitle(content, tr::lng_settings_call_section_input());
Ui::AddSkip(content);
Ui::AddDivider(content);
Ui::AddSkip(content);
Ui::AddSubsectionTitle(content, tr::lng_settings_call_section_input());
AddButtonWithLabel(
content,
tr::lng_settings_call_input_device(),
@ -285,10 +286,10 @@ void Calls::setupContent() {
}, was, _micLevel, kMicTestAnimationDuration);
});
AddSkip(content);
AddDivider(content);
AddSkip(content);
AddSubsectionTitle(content, tr::lng_settings_call_section_other());
Ui::AddSkip(content);
Ui::AddDivider(content);
Ui::AddSkip(content);
Ui::AddSubsectionTitle(content, tr::lng_settings_call_section_other());
const auto api = &_controller->session().api();
AddButton(
@ -318,7 +319,7 @@ void Calls::setupContent() {
}
});
AddSkip(content);
Ui::AddSkip(content);
Ui::ResizeFitChild(this, content);
}

View file

@ -26,7 +26,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/checkbox.h"
#include "ui/widgets/color_editor.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/labels.h"
#include "ui/chat/attach/attach_extensions.h"
#include "ui/chat/chat_style.h"
#include "ui/chat/chat_theme.h"
@ -36,6 +35,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/toast/toast.h"
#include "ui/image/image.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "ui/ui_utility.h"
#include "history/view/history_view_quick_action.h"
#include "lang/lang_keys.h"
@ -60,14 +60,12 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "data/data_user.h"
#include "chat_helpers/emoji_sets_manager.h"
#include "base/platform/base_platform_info.h"
#include "platform/platform_specific.h"
#include "base/call_delayed.h"
#include "support/support_common.h"
#include "support/support_templates.h"
#include "main/main_session.h"
#include "main/main_session_settings.h"
#include "mainwidget.h"
#include "mainwindow.h"
#include "styles/style_chat_helpers.h" // stickersRemove
#include "styles/style_settings.h"
#include "styles/style_layers.h"
@ -703,10 +701,10 @@ void ChooseFromFile(
void SetupStickersEmoji(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
AddSubsectionTitle(container, tr::lng_settings_stickers_emoji());
Ui::AddSubsectionTitle(container, tr::lng_settings_stickers_emoji());
const auto session = &controller->session();
@ -826,18 +824,18 @@ void SetupStickersEmoji(
controller->show(Box<Ui::Emoji::ManageSetsBox>(session));
});
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
}
void SetupMessages(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
AddSubsectionTitle(container, tr::lng_settings_messages());
Ui::AddSubsectionTitle(container, tr::lng_settings_messages());
AddSkip(container, st::settingsSendTypeSkip);
Ui::AddSkip(container, st::settingsSendTypeSkip);
using SendByType = Ui::InputSubmitSettings;
using Quick = HistoryView::DoubleClickQuickAction;
@ -876,7 +874,7 @@ void SetupMessages(
controller->content()->ctrlEnterSubmitUpdated();
});
AddSkip(inner, st::settingsCheckboxesSkip);
Ui::AddSkip(inner, st::settingsCheckboxesSkip);
const auto groupQuick = std::make_shared<Ui::RadioenumGroup<Quick>>(
Core::App().settings().chatQuickAction());
@ -1001,7 +999,7 @@ void SetupMessages(
show->showBox(Box(ReactionsSettingsBox, controller));
});
AddSkip(inner, st::settingsSendTypeSkip);
Ui::AddSkip(inner, st::settingsSendTypeSkip);
inner->add(
object_ptr<Ui::Checkbox>(
@ -1016,14 +1014,14 @@ void SetupMessages(
Core::App().saveSettingsDelayed();
}, inner->lifetime());
AddSkip(inner, st::settingsCheckboxesSkip);
Ui::AddSkip(inner, st::settingsCheckboxesSkip);
}
void SetupArchive(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
PreloadArchiveSettings(&controller->session());
AddButton(
@ -1082,9 +1080,9 @@ void SetupDataStorage(
not_null<Ui::VerticalLayout*> container) {
using namespace rpl::mappers;
AddSkip(container);
Ui::AddSkip(container);
AddSubsectionTitle(container, tr::lng_settings_data_storage());
Ui::AddSubsectionTitle(container, tr::lng_settings_data_storage());
SetupConnectionType(
&controller->window(),
@ -1159,16 +1157,16 @@ void SetupDataStorage(
path->toggleOn(ask->toggledValue() | rpl::map(!_1));
#endif // OS_WIN_STORE
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
}
void SetupAutoDownload(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
AddSubsectionTitle(container, tr::lng_media_auto_settings());
Ui::AddSubsectionTitle(container, tr::lng_media_auto_settings());
using Source = Data::AutoDownload::Source;
const auto add = [&](
@ -1198,16 +1196,16 @@ void SetupAutoDownload(
Source::Channel,
{ &st::menuIconChannel });
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
}
void SetupChatBackground(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
AddSubsectionTitle(container, tr::lng_settings_section_background());
Ui::AddSubsectionTitle(container, tr::lng_settings_section_background());
container->add(
object_ptr<BackgroundRow>(container, controller),
@ -1223,7 +1221,7 @@ void SetupChatBackground(
std::move(wrap),
QMargins(0, skipTop, 0, skipBottom)));
AddSkip(container, st::settingsTileSkip);
Ui::AddSkip(container, st::settingsTileSkip);
const auto background = Window::Theme::Background();
const auto tile = inner->add(
@ -1455,7 +1453,7 @@ void SetupDefaultThemes(
apply(*scheme);
}, container->lifetime());
AddSkip(container);
Ui::AddSkip(container);
}
void SetupThemeOptions(
@ -1463,13 +1461,13 @@ void SetupThemeOptions(
not_null<Ui::VerticalLayout*> container) {
using namespace Window::Theme;
AddSkip(container, st::settingsPrivacySkip);
Ui::AddSkip(container, st::settingsPrivacySkip);
AddSubsectionTitle(container, tr::lng_settings_themes());
Ui::AddSubsectionTitle(container, tr::lng_settings_themes());
AddSkip(container, st::settingsThemesTopSkip);
Ui::AddSkip(container, st::settingsThemesTopSkip);
SetupDefaultThemes(&controller->window(), container);
AddSkip(container);
Ui::AddSkip(container);
}
void SetupCloudThemes(
@ -1485,8 +1483,8 @@ void SetupCloudThemes(
)->setDuration(0);
const auto inner = wrap->entity();
AddDivider(inner);
AddSkip(inner, st::settingsPrivacySkip);
Ui::AddDivider(inner);
Ui::AddSkip(inner, st::settingsPrivacySkip);
const auto title = AddSubsectionTitle(
inner,
@ -1506,7 +1504,7 @@ void SetupCloudThemes(
outerWidth);
}, showAll->lifetime());
AddSkip(inner, st::settingsThemesTopSkip);
Ui::AddSkip(inner, st::settingsThemesTopSkip);
const auto list = inner->lifetime().make_state<CloudList>(
inner,
@ -1535,7 +1533,7 @@ void SetupCloudThemes(
)->setDuration(0);
const auto edit = editWrap->entity();
AddSkip(edit, st::settingsThemesBottomSkip);
Ui::AddSkip(edit, st::settingsThemesBottomSkip);
AddButton(
edit,
tr::lng_settings_bg_theme_edit(),
@ -1559,7 +1557,7 @@ void SetupCloudThemes(
return (Background()->themeObject().cloud.createdBy == userId);
}));
AddSkip(inner, 2 * st::settingsSectionSkip);
Ui::AddSkip(inner, 2 * st::settingsSectionSkip);
wrap->setDuration(0)->toggleOn(list->empty() | rpl::map(!_1));
}
@ -1567,10 +1565,10 @@ void SetupCloudThemes(
void SetupThemeSettings(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddDivider(container);
AddSkip(container, st::settingsPrivacySkip);
Ui::AddDivider(container);
Ui::AddSkip(container, st::settingsPrivacySkip);
AddSubsectionTitle(container, tr::lng_settings_theme_settings());
Ui::AddSubsectionTitle(container, tr::lng_settings_theme_settings());
AddPeerColorButton(
container,
@ -1603,7 +1601,7 @@ void SetupThemeSettings(
});
}
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
}
void SetupSupportSwitchSettings(
@ -1674,11 +1672,11 @@ void SetupSupportChatsLimitSlice(
void SetupSupport(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddSkip(container);
Ui::AddSkip(container);
AddSubsectionTitle(container, rpl::single(u"Support settings"_q));
Ui::AddSubsectionTitle(container, rpl::single(u"Support settings"_q));
AddSkip(container, st::settingsSendTypeSkip);
Ui::AddSkip(container, st::settingsSendTypeSkip);
const auto skip = st::settingsSendTypeSkip;
auto wrap = object_ptr<Ui::VerticalLayout>(container);
@ -1691,7 +1689,7 @@ void SetupSupport(
SetupSupportSwitchSettings(controller, inner);
AddSkip(inner, st::settingsCheckboxesSkip);
Ui::AddSkip(inner, st::settingsCheckboxesSkip);
inner->add(
object_ptr<Ui::Checkbox>(
@ -1721,15 +1719,15 @@ void SetupSupport(
controller->session().saveSettingsDelayed();
}, inner->lifetime());
AddSkip(inner, st::settingsCheckboxesSkip);
Ui::AddSkip(inner, st::settingsCheckboxesSkip);
AddSubsectionTitle(inner, rpl::single(u"Load chats for a period"_q));
Ui::AddSubsectionTitle(inner, rpl::single(u"Load chats for a period"_q));
SetupSupportChatsLimitSlice(controller, inner);
AddSkip(inner, st::settingsCheckboxesSkip);
Ui::AddSkip(inner, st::settingsCheckboxesSkip);
AddSkip(inner);
Ui::AddSkip(inner);
}
Chat::Chat(QWidget *parent, not_null<Window::SessionController*> controller)

View file

@ -99,32 +99,6 @@ QSize Icon::size() const {
return _icon->size();
}
void AddSkip(not_null<Ui::VerticalLayout*> container) {
AddSkip(container, st::settingsSectionSkip);
}
void AddSkip(not_null<Ui::VerticalLayout*> container, int skip) {
container->add(object_ptr<Ui::FixedHeightWidget>(
container,
skip));
}
void AddDivider(not_null<Ui::VerticalLayout*> container) {
container->add(object_ptr<Ui::BoxContentDivider>(container));
}
void AddDividerText(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> text) {
container->add(object_ptr<Ui::DividerLabel>(
container,
object_ptr<Ui::FlatLabel>(
container,
std::move(text),
st::boxDividerLabel),
st::settingsDividerLabelPadding));
}
void AddButtonIcon(
not_null<Ui::AbstractButton*> button,
const style::SettingsButton &st,
@ -224,19 +198,6 @@ not_null<Button*> AddButtonWithLabel(
return button;
}
not_null<Ui::FlatLabel*> AddSubsectionTitle(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> text,
style::margins addPadding,
const style::FlatLabel *st) {
return container->add(
object_ptr<Ui::FlatLabel>(
container,
std::move(text),
st ? *st : st::settingsSubsectionTitle),
st::settingsSubsectionTitlePadding + addPadding);
}
void AddDividerTextWithLottie(
not_null<Ui::VerticalLayout*> parent,
rpl::producer<> showFinished,

View file

@ -167,12 +167,6 @@ private:
};
void AddSkip(not_null<Ui::VerticalLayout*> container);
void AddSkip(not_null<Ui::VerticalLayout*> container, int skip);
void AddDivider(not_null<Ui::VerticalLayout*> container);
void AddDividerText(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> text);
void AddButtonIcon(
not_null<Ui::AbstractButton*> button,
const style::SettingsButton &st,
@ -198,11 +192,6 @@ void CreateRightLabel(
rpl::producer<QString> label,
const style::SettingsButton &st,
rpl::producer<QString> buttonText);
not_null<Ui::FlatLabel*> AddSubsectionTitle(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> text,
style::margins addPadding = {},
const style::FlatLabel *st = nullptr);
void AddDividerTextWithLottie(
not_null<Ui::VerticalLayout*> parent,
rpl::producer<> showFinished,

View file

@ -12,6 +12,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/slide_wrap.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/labels.h"
#include "ui/vertical_list.h"
#include "ui/gl/gl_detection.h"
#include "ui/chat/chat_style_radius.h"
#include "base/options.h"
@ -87,16 +88,16 @@ void AddOption(
const auto &description = option.description();
if (!description.isEmpty()) {
AddSkip(container, st::settingsCheckboxesSkip);
AddDividerText(container, rpl::single(description));
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddDividerText(container, rpl::single(description));
Ui::AddSkip(container, st::settingsCheckboxesSkip);
}
}
void SetupExperimental(
not_null<Window::Controller*> window,
not_null<Ui::VerticalLayout*> container) {
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
container->add(
object_ptr<Ui::FlatLabel>(
@ -112,8 +113,8 @@ void SetupExperimental(
container,
object_ptr<Ui::VerticalLayout>(container)));
const auto inner = wrap->entity();
AddDivider(inner);
AddSkip(inner, st::settingsCheckboxesSkip);
Ui::AddDivider(inner);
Ui::AddSkip(inner, st::settingsCheckboxesSkip);
reset = AddButton(
inner,
tr::lng_settings_experimental_restore(),
@ -122,11 +123,11 @@ void SetupExperimental(
base::options::reset();
wrap->hide(anim::type::normal);
});
AddSkip(inner, st::settingsCheckboxesSkip);
Ui::AddSkip(inner, st::settingsCheckboxesSkip);
}
AddDivider(container);
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddDivider(container);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
const auto addToggle = [&](const char name[]) {
AddOption(

View file

@ -27,6 +27,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/filter_icons.h"
#include "ui/layers/generic_box.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "ui/text/text_utilities.h"
#include "ui/widgets/box_content_divider.h"
#include "ui/widgets/buttons.h"
@ -39,7 +40,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "styles/style_layers.h"
#include "styles/style_boxes.h"
#include "styles/style_chat_helpers.h"
#include "styles/style_window.h"
namespace Settings {
namespace {
@ -342,8 +342,8 @@ void FilterRowButton::paintEvent(QPaintEvent *e) {
const auto limit = [=] {
return Data::PremiumLimits(session).dialogFiltersCurrent();
};
AddSkip(container, st::settingsSectionSkip);
AddSubsectionTitle(container, tr::lng_filters_subtitle());
Ui::AddSkip(container, st::settingsSectionSkip);
Ui::AddSubsectionTitle(container, tr::lng_filters_subtitle());
struct State {
std::vector<FilterRow> rows;
@ -571,16 +571,16 @@ void FilterRowButton::paintEvent(QPaintEvent *e) {
crl::guard(container, doneCallback),
crl::guard(container, saveAnd)));
});
AddSkip(container);
Ui::AddSkip(container);
const auto nonEmptyAbout = container->add(
object_ptr<Ui::SlideWrap<Ui::VerticalLayout>>(
container,
object_ptr<Ui::VerticalLayout>(container))
)->setDuration(0);
const auto aboutRows = nonEmptyAbout->entity();
AddDivider(aboutRows);
AddSkip(aboutRows);
AddSubsectionTitle(aboutRows, tr::lng_filters_recommended());
Ui::AddDivider(aboutRows);
Ui::AddSkip(aboutRows);
Ui::AddSubsectionTitle(aboutRows, tr::lng_filters_recommended());
rpl::single(rpl::empty) | rpl::then(
session->data().chatsFilters().suggestedUpdated()
@ -613,7 +613,7 @@ void FilterRowButton::paintEvent(QPaintEvent *e) {
}, button->lifetime());
}
aboutRows->resizeToWidth(container->width());
AddSkip(aboutRows, st::settingsSectionSkip);
Ui::AddSkip(aboutRows, st::settingsSectionSkip);
}, aboutRows->lifetime());
auto showSuggestions = rpl::combine(

View file

@ -22,6 +22,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "settings/settings_common.h"
#include "ui/boxes/confirm_box.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "ui/text/format_values.h"
#include "ui/text/text_utilities.h"
#include "ui/widgets/buttons.h"
@ -326,8 +327,8 @@ void GlobalTTL::setupContent() {
SetupTopContent(content, _showFinished.events());
AddSkip(content);
AddSubsectionTitle(content, tr::lng_settings_ttl_after_subtitle());
Ui::AddSkip(content);
Ui::AddSubsectionTitle(content, tr::lng_settings_ttl_after_subtitle());
content->add(object_ptr<Ui::VerticalLayout>::fromRaw(_buttons));
@ -362,7 +363,7 @@ void GlobalTTL::setupContent() {
}));
});
AddSkip(content);
Ui::AddSkip(content);
auto footer = object_ptr<Ui::FlatLabel>(
content,

View file

@ -7,7 +7,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
#include "settings/settings_information.h"
#include "editor/photo_editor_layer_widget.h"
#include "settings/settings_common.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/wrap/vertical_layout_reorder.h"
@ -24,6 +23,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/text/text_utilities.h"
#include "ui/delayed_activation.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "ui/unread_badge_paint.h"
#include "core/application.h"
#include "core/core_settings.h"
@ -49,7 +49,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "apiwrap.h"
#include "api/api_peer_photo.h"
#include "api/api_user_names.h"
#include "core/file_utilities.h"
#include "base/call_delayed.h"
#include "base/options.h"
#include "base/unixtime.h"
@ -62,7 +61,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "styles/style_window.h"
#include <QtGui/QGuiApplication>
#include <QtGui/QClipboard>
#include <QtCore/QBuffer>
namespace Settings {
@ -362,7 +360,7 @@ void SetupRows(
not_null<UserData*> self) {
const auto session = &self->session();
AddSkip(container);
Ui::AddSkip(container);
AddRow(
container,
@ -428,8 +426,8 @@ void SetupRows(
},
{ &st::menuIconUsername });
AddSkip(container);
AddDividerText(container, tr::lng_settings_username_about());
Ui::AddSkip(container);
Ui::AddDividerText(container, tr::lng_settings_username_about());
}
void SetupBio(
@ -549,13 +547,13 @@ void SetupBio(
&self->session());
updated();
AddDividerText(container, tr::lng_settings_about_bio());
Ui::AddDividerText(container, tr::lng_settings_about_bio());
}
void SetupAccountsWrap(
not_null<Ui::VerticalLayout*> container,
not_null<Window::SessionController*> controller) {
AddSkip(container);
Ui::AddSkip(container);
SetupAccounts(container, controller);
}

View file

@ -19,6 +19,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/widgets/scroll_area.h"
#include "ui/cached_round_corners.h"
#include "ui/vertical_list.h"
#include "lang/lang_keys.h"
#include "boxes/abstract_box.h"
#include "window/window_controller.h"
@ -61,16 +62,16 @@ object_ptr<Ui::RpWidget> CreateIntroSettings(
not_null<Window::Controller*> window) {
auto result = object_ptr<Ui::VerticalLayout>(parent);
AddDivider(result);
AddSkip(result);
Ui::AddDivider(result);
Ui::AddSkip(result);
SetupLanguageButton(window, result);
SetupConnectionType(window, &window->account(), result);
AddSkip(result);
Ui::AddSkip(result);
if (HasUpdate()) {
AddDivider(result);
AddSkip(result);
Ui::AddDivider(result);
Ui::AddSkip(result);
SetupUpdate(result);
AddSkip(result);
Ui::AddSkip(result);
}
{
auto wrap = object_ptr<Ui::VerticalLayout>(result);
@ -81,29 +82,29 @@ object_ptr<Ui::RpWidget> CreateIntroSettings(
window->sessionController(),
wrap.data());
if (wrap->count() > 0) {
AddDivider(result);
AddSkip(result);
Ui::AddDivider(result);
Ui::AddSkip(result);
result->add(object_ptr<Ui::OverrideMargins>(
result,
std::move(wrap)));
AddSkip(result);
Ui::AddSkip(result);
}
}
AddDivider(result);
AddSkip(result);
Ui::AddDivider(result);
Ui::AddSkip(result);
SetupInterfaceScale(window, result, false);
SetupDefaultThemes(window, result);
AddSkip(result);
Ui::AddSkip(result);
if (anim::Disabled()) {
AddDivider(result);
AddSkip(result);
Ui::AddDivider(result);
Ui::AddSkip(result);
SetupAnimations(window, result);
AddSkip(result);
Ui::AddSkip(result);
}
AddDivider(result);
AddSkip(result);
Ui::AddDivider(result);
Ui::AddSkip(result);
SetupFaq(result, false);
return result;

View file

@ -18,6 +18,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "settings/cloud_password/settings_cloud_password_common.h"
#include "settings/settings_common.h"
#include "storage/storage_domain.h"
#include "ui/vertical_list.h"
#include "ui/boxes/confirm_box.h"
#include "ui/widgets/buttons.h"
#include "ui/widgets/fields/password_input.h"
@ -120,7 +121,7 @@ void LocalPasscodeEnter::setupContent() {
[=] { _showBack.fire({}); });
}
AddSkip(content);
Ui::AddSkip(content);
content->add(
object_ptr<Ui::CenterWrap<>>(
@ -145,10 +146,10 @@ void LocalPasscodeEnter::setupContent() {
};
addDescription(tr::lng_passcode_about1());
AddSkip(content);
Ui::AddSkip(content);
addDescription(tr::lng_passcode_about2());
AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
Ui::AddSkip(content, st::settingLocalPasscodeDescriptionBottomSkip);
const auto addField = [&](rpl::producer<QString> &&text) {
const auto &st = st::settingLocalPasscodeInputField;
@ -437,7 +438,7 @@ void LocalPasscodeManage::setupContent() {
content->lifetime(),
[=] { _showBack.fire({}); });
AddSkip(content);
Ui::AddSkip(content);
AddButton(
content,
@ -481,7 +482,7 @@ void LocalPasscodeManage::setupContent() {
) | rpl::start_to_stream(state->autoLockBoxClosing, box->lifetime());
});
AddSkip(content);
Ui::AddSkip(content);
using Divider = CloudPassword::OneEdgeBoxContentDivider;
const auto divider = Ui::CreateChild<Divider>(this);

View file

@ -33,6 +33,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/text/text_utilities.h"
#include "ui/toast/toast.h"
#include "ui/vertical_list.h"
#include "info/profile/info_profile_badge.h"
#include "info/profile/info_profile_emoji_status_panel.h"
#include "data/data_user.h"
@ -298,8 +299,8 @@ void SetupSections(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container,
Fn<void(Type)> showOther) {
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
const auto addSection = [&](
rpl::producer<QString> label,
@ -317,8 +318,8 @@ void SetupSections(
if (controller->session().supportMode()) {
SetupSupport(controller, container);
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
} else {
addSection(
tr::lng_settings_my_account(),
@ -394,7 +395,7 @@ void SetupSections(
SetupPowerSavingButton(&controller->window(), container);
SetupLanguageButton(&controller->window(), container);
AddSkip(container);
Ui::AddSkip(container);
}
void SetupPremium(
@ -404,8 +405,8 @@ void SetupPremium(
if (!controller->session().premiumPossible()) {
return;
}
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
AddButton(
container,
@ -416,7 +417,7 @@ void SetupPremium(
controller->setPremiumRef("settings");
showOther(PremiumId());
});
AddSkip(container);
Ui::AddSkip(container);
}
bool HasInterfaceScale() {
@ -570,7 +571,7 @@ void SetupInterfaceScale(
}, button->lifetime());
if (!icon) {
AddSkip(container, st::settingsThumbSkip);
Ui::AddSkip(container, st::settingsThumbSkip);
}
}
@ -590,8 +591,8 @@ void SetupFaq(not_null<Ui::VerticalLayout*> container, bool icon) {
void SetupHelp(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddDivider(container);
AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
SetupFaq(container);
@ -678,10 +679,10 @@ void Main::setupContent(not_null<Window::SessionController*> controller) {
_showOther.fire_copy(type);
});
if (HasInterfaceScale()) {
AddDivider(content);
AddSkip(content);
Ui::AddDivider(content);
Ui::AddSkip(content);
SetupInterfaceScale(&controller->window(), content);
AddSkip(content);
Ui::AddSkip(content);
}
SetupPremium(controller, content, [=](Type type) {
_showOther.fire_copy(type);

View file

@ -20,6 +20,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/widgets/discrete_sliders.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "ui/ui_utility.h"
#include "lang/lang_keys.h"
#include "window/notifications_manager.h"
@ -880,17 +881,19 @@ NotifyViewCheckboxes SetupNotifyViewOptions(
void SetupAdvancedNotifications(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddSkip(container, st::settingsCheckboxesSkip);
AddDivider(container);
AddSkip(container, st::settingsCheckboxesSkip);
AddSubsectionTitle(container, tr::lng_settings_notifications_position());
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddDivider(container);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSubsectionTitle(
container,
tr::lng_settings_notifications_position());
Ui::AddSkip(container, st::settingsCheckboxesSkip);
const auto position = container->add(
object_ptr<NotificationsCount>(container, controller));
AddSkip(container, st::settingsCheckboxesSkip);
AddSubsectionTitle(container, tr::lng_settings_notifications_count());
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSubsectionTitle(container, tr::lng_settings_notifications_count());
const auto count = container->add(
object_ptr<Ui::SettingsSlider>(container, st::settingsSlider),
@ -903,7 +906,7 @@ void SetupAdvancedNotifications(
) | rpl::start_with_next([=](int section) {
position->setCount(section + 1);
}, count->lifetime());
AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
}
void SetupMultiAccountNotifications(
@ -912,7 +915,7 @@ void SetupMultiAccountNotifications(
if (Core::App().domain().accounts().size() < 2) {
return;
}
AddSubsectionTitle(container, tr::lng_settings_show_from());
Ui::AddSubsectionTitle(container, tr::lng_settings_show_from());
const auto fromAll = AddButton(
container,
@ -938,9 +941,9 @@ void SetupMultiAccountNotifications(
}
}, fromAll->lifetime());
AddSkip(container);
AddDividerText(container, tr::lng_settings_notify_all_about());
AddSkip(container);
Ui::AddSkip(container);
Ui::AddDividerText(container, tr::lng_settings_notify_all_about());
Ui::AddSkip(container);
}
void SetupNotificationsContent(
@ -949,7 +952,7 @@ void SetupNotificationsContent(
Fn<void(Type)> showOther) {
using namespace rpl::mappers;
AddSkip(container, st::settingsPrivacySkip);
Ui::AddSkip(container, st::settingsPrivacySkip);
using NotifyView = Core::Settings::NotifyView;
SetupMultiAccountNotifications(controller, container);
@ -1010,7 +1013,7 @@ void SetupNotificationsContent(
{ &st::menuIconUnmute },
soundAllowed->events_starting_with(allowed()));
AddSkip(container);
Ui::AddSkip(container);
const auto checkboxes = SetupNotifyViewOptions(
controller,
@ -1029,8 +1032,8 @@ void SetupNotificationsContent(
controller->session().data().notifySettings().loadExceptions();
AddSkip(container, st::notifyPreviewBottomSkip);
AddSubsectionTitle(container, tr::lng_settings_notify_title());
Ui::AddSkip(container, st::notifyPreviewBottomSkip);
Ui::AddSubsectionTitle(container, tr::lng_settings_notify_title());
const auto addType = [&](Data::DefaultNotify type) {
AddTypeButton(container, controller, type, showOther);
};
@ -1038,10 +1041,10 @@ void SetupNotificationsContent(
addType(Data::DefaultNotify::Group);
addType(Data::DefaultNotify::Broadcast);
AddSkip(container, st::settingsCheckboxesSkip);
AddDivider(container);
AddSkip(container, st::settingsCheckboxesSkip);
AddSubsectionTitle(container, tr::lng_settings_events_title());
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddDivider(container);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSubsectionTitle(container, tr::lng_settings_events_title());
auto joinSilent = rpl::single(
session->api().contactSignupSilentCurrent().value_or(false)
@ -1072,10 +1075,10 @@ void SetupNotificationsContent(
Core::App().saveSettingsDelayed();
}, joined->lifetime());
AddSkip(container, st::settingsCheckboxesSkip);
AddDivider(container);
AddSkip(container, st::settingsCheckboxesSkip);
AddSubsectionTitle(
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddDivider(container);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSubsectionTitle(
container,
tr::lng_settings_notifications_calls_title());
const auto authorizations = &session->api().authorizations();
@ -1090,10 +1093,10 @@ void SetupNotificationsContent(
authorizations->toggleCallsDisabledHere(!toggled);
}, container->lifetime());
AddSkip(container, st::settingsCheckboxesSkip);
AddDivider(container);
AddSkip(container, st::settingsCheckboxesSkip);
AddSubsectionTitle(container, tr::lng_settings_badge_title());
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddDivider(container);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSubsectionTitle(container, tr::lng_settings_badge_title());
const auto muted = AddButton(
container,
@ -1120,10 +1123,10 @@ void SetupNotificationsContent(
return nullptr;
}
AddSkip(container, st::settingsCheckboxesSkip);
AddDivider(container);
AddSkip(container, st::settingsCheckboxesSkip);
AddSubsectionTitle(container, tr::lng_settings_native_title());
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddDivider(container);
Ui::AddSkip(container, st::settingsCheckboxesSkip);
Ui::AddSubsectionTitle(container, tr::lng_settings_native_title());
return AddButton(
container,
std::move(nativeText),

View file

@ -26,6 +26,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/popup_menu.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/vertical_list.h"
#include "window/window_session_controller.h"
#include "styles/style_layers.h"
#include "styles/style_menu_icons.h"
@ -378,7 +379,7 @@ void SetupChecks(
not_null<Ui::VerticalLayout*> container,
not_null<Window::SessionController*> controller,
Notify type) {
AddSubsectionTitle(container, Title(type));
Ui::AddSubsectionTitle(container, Title(type));
const auto session = &controller->session();
const auto settings = &session->data().notifySettings();
@ -597,12 +598,12 @@ void NotificationsType::setupContent(
not_null<Window::SessionController*> controller) {
const auto container = Ui::CreateChild<Ui::VerticalLayout>(this);
AddSkip(container, st::settingsPrivacySkip);
Ui::AddSkip(container, st::settingsPrivacySkip);
SetupChecks(container, controller, _type);
AddSkip(container);
AddDivider(container);
AddSkip(container);
Ui::AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
SetupExceptions(container, controller, _type);

View file

@ -12,10 +12,11 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "core/application.h"
#include "core/core_settings.h"
#include "lang/lang_keys.h"
#include "settings/settings_common.h"
#include "settings/settings_common.h" // AddButton.
#include "ui/layers/generic_box.h"
#include "ui/widgets/buttons.h"
#include "ui/power_saving.h"
#include "ui/vertical_list.h"
#include "styles/style_menu_icons.h"
#include "styles/style_layers.h"
#include "styles/style_settings.h"
@ -40,7 +41,7 @@ void PowerSavingBox(not_null<Ui::GenericBox*> box) {
box->setPinnedToTopContent(
object_ptr<Ui::FixedHeightWidget>(box, st::lineWidth));
const auto subtitle = AddSubsectionTitle(
const auto subtitle = Ui::AddSubsectionTitle(
container,
tr::lng_settings_power_subtitle(),
st::powerSavingSubtitlePadding);
@ -63,16 +64,16 @@ void PowerSavingBox(not_null<Ui::GenericBox*> box) {
auto automatic = (Ui::SettingsButton*)nullptr;
if (batterySaving.has_value()) {
AddSkip(container);
AddDivider(container);
AddSkip(container);
Ui::AddSkip(container);
Ui::AddDivider(container);
Ui::AddSkip(container);
automatic = AddButton(
container,
tr::lng_settings_power_auto(),
st::powerSavingButtonNoIcon
)->toggleOn(rpl::single(!ignore));
AddSkip(container);
AddDividerText(container, tr::lng_settings_power_auto_about());
Ui::AddSkip(container);
Ui::AddDividerText(container, tr::lng_settings_power_auto_about());
state->forceDisabledMessage = rpl::combine(
automatic->toggledValue(),

View file

@ -30,7 +30,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "main/main_app_config.h"
#include "main/main_session.h"
#include "settings/settings_common.h"
#include "settings/settings_premium.h"
#include "ui/abstract_button.h"
#include "ui/basic_click_handlers.h"
#include "ui/effects/gradient.h"
@ -40,7 +39,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/layers/generic_box.h"
#include "ui/text/format_values.h"
#include "ui/text/text_utilities.h"
#include "ui/text/text_utilities.h"
#include "ui/toast/toast.h"
#include "ui/widgets/checkbox.h" // Ui::RadiobuttonGroup.
#include "ui/widgets/gradient_round_button.h"
@ -51,6 +49,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/vertical_layout.h"
#include "ui/painter.h"
#include "ui/power_saving.h"
#include "ui/vertical_list.h"
#include "window/window_controller.h"
#include "window/window_session_controller.h"
#include "base/unixtime.h"
@ -872,7 +871,7 @@ void Premium::setupSubscriptionOptions(
object_ptr<Ui::VerticalLayout>(container)));
const auto content = options->entity();
AddSkip(content, st::settingsPremiumOptionsPadding.top());
Ui::AddSkip(content, st::settingsPremiumOptionsPadding.top());
const auto apiPremium = &_controller->session().api().premium();
Ui::Premium::AddGiftOptions(
@ -882,13 +881,13 @@ void Premium::setupSubscriptionOptions(
st::premiumSubscriptionOption,
true);
AddSkip(content, st::settingsPremiumOptionsPadding.bottom());
AddDivider(content);
Ui::AddSkip(content, st::settingsPremiumOptionsPadding.bottom());
Ui::AddDivider(content);
const auto lastSkip = TopTransitionSkip() * (isEmojiStatus ? 1 : 2);
AddSkip(content, lastSkip - st::settingsSectionSkip);
AddSkip(skip->entity(), lastSkip);
Ui::AddSkip(content, lastSkip - st::settingsSectionSkip);
Ui::AddSkip(skip->entity(), lastSkip);
auto toggleOn = rpl::combine(
Data::AmPremiumValue(&_controller->session()),
@ -1089,11 +1088,11 @@ void Premium::setupContent() {
{ .icon = icons[i], .backgroundBrush = brush });
}
AddSkip(content, descriptionPadding.bottom());
Ui::AddSkip(content, descriptionPadding.bottom());
#if 0
AddSkip(content);
AddDivider(content);
AddSkip(content);
Ui::AddSkip(content);
Ui::AddDivider(content);
Ui::AddSkip(content);
content->add(
object_ptr<Ui::FlatLabel>(
@ -1108,7 +1107,9 @@ void Premium::setupContent() {
tr::lng_premium_summary_bottom_about(Ui::Text::RichLangValue),
st::aboutLabel),
st::boxRowPadding);
AddSkip(content, stDefault.padding.top() + stDefault.padding.bottom());
Ui::AddSkip(
content,
stDefault.padding.top() + stDefault.padding.bottom());
#endif
Ui::ResizeFitChild(this, content);

View file

@ -44,6 +44,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/image/image_prepare.h"
#include "ui/image/image_prepare.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "ui/text/format_values.h" // Ui::FormatPhone
#include "ui/text/text_utilities.h"
#include "ui/widgets/checkbox.h"
@ -562,8 +563,10 @@ object_ptr<Ui::RpWidget> PhoneNumberPrivacyController::setupMiddleWidget(
object_ptr<Ui::VerticalLayout>(parent));
const auto container = widget->entity();
AddSkip(container);
AddSubsectionTitle(container, tr::lng_edit_privacy_phone_number_find());
Ui::AddSkip(container);
Ui::AddSubsectionTitle(
container,
tr::lng_edit_privacy_phone_number_find());
const auto group = std::make_shared<Ui::RadioenumGroup<Option>>();
group->setChangedCallback([=](Option value) {
_addedByPhone = value;
@ -581,8 +584,10 @@ object_ptr<Ui::RpWidget> PhoneNumberPrivacyController::setupMiddleWidget(
};
addOption(Option::Everyone);
addOption(Option::Contacts);
AddSkip(container, st::settingsSectionSkip + st::settingsPrivacySkipTop);
AddDivider(container);
Ui::AddSkip(
container,
st::settingsSectionSkip + st::settingsPrivacySkipTop);
Ui::AddDivider(container);
using namespace rpl::mappers;
widget->toggleOn(_phoneNumberOption.value(
@ -757,8 +762,10 @@ object_ptr<Ui::RpWidget> CallsPrivacyController::setupBelowWidget(
auto result = object_ptr<Ui::VerticalLayout>(parent);
const auto content = result.data();
AddSkip(content, st::settingsPeerToPeerSkip);
AddSubsectionTitle(content, tr::lng_settings_calls_peer_to_peer_title());
Ui::AddSkip(content, st::settingsPeerToPeerSkip);
Ui::AddSubsectionTitle(
content,
tr::lng_settings_calls_peer_to_peer_title());
Settings::AddPrivacyButton(
controller,
content,
@ -767,7 +774,7 @@ object_ptr<Ui::RpWidget> CallsPrivacyController::setupBelowWidget(
UserPrivacy::Key::CallsPeer2Peer,
[] { return std::make_unique<CallsPeer2PeerPrivacyController>(); },
&st::settingsButton);
AddSkip(content);
Ui::AddSkip(content);
return result;
}
@ -1081,7 +1088,7 @@ object_ptr<Ui::RpWidget> ProfilePhotoPrivacyController::setupMiddleWidget(
st::inviteLinkUserpics.size,
st::inviteLinkUserpics.size);
AddSkip(container);
Ui::AddSkip(container);
const auto setUserpicButton = AddButton(
container,
state->setUserpicButtonText.value(),
@ -1095,8 +1102,8 @@ object_ptr<Ui::RpWidget> ProfilePhotoPrivacyController::setupMiddleWidget(
parent,
tr::lng_edit_privacy_profile_photo_public_remove(),
stRemoveButton)));
AddSkip(container);
AddDividerText(
Ui::AddSkip(container);
Ui::AddDividerText(
container,
tr::lng_edit_privacy_profile_photo_public_about());

View file

@ -45,6 +45,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/buttons.h"
#include "ui/widgets/checkbox.h"
#include "ui/layers/generic_box.h"
#include "ui/vertical_list.h"
#include "calls/calls_instance.h"
#include "core/core_cloud_password.h"
#include "core/update_checker.h"
@ -253,8 +254,8 @@ void SetupPrivacy(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container,
rpl::producer<> updateTrigger) {
AddSkip(container, st::settingsPrivacySkip);
AddSubsectionTitle(container, tr::lng_settings_privacy_title());
Ui::AddSkip(container, st::settingsPrivacySkip);
Ui::AddSubsectionTitle(container, tr::lng_settings_privacy_title());
const auto session = &controller->session();
@ -310,8 +311,8 @@ void SetupPrivacy(
session->api().userPrivacy().reload(Api::UserPrivacy::Key::AddedByPhone);
AddSkip(container, st::settingsPrivacySecurityPadding);
AddDivider(container);
Ui::AddSkip(container, st::settingsPrivacySecurityPadding);
Ui::AddDivider(container);
}
void SetupLocalPasscode(
@ -426,8 +427,8 @@ void SetupSensitiveContent(
object_ptr<Ui::VerticalLayout>(container)));
const auto inner = wrap->entity();
AddSkip(inner);
AddSubsectionTitle(inner, tr::lng_settings_sensitive_title());
Ui::AddSkip(inner);
Ui::AddSubsectionTitle(inner, tr::lng_settings_sensitive_title());
const auto session = &controller->session();
@ -449,8 +450,8 @@ void SetupSensitiveContent(
session->api().sensitiveContent().update(toggled);
}, container->lifetime());
AddSkip(inner);
AddDividerText(inner, tr::lng_settings_sensitive_about());
Ui::AddSkip(inner);
Ui::AddDividerText(inner, tr::lng_settings_sensitive_about());
wrap->toggleOn(session->api().sensitiveContent().canChange());
}
@ -459,8 +460,8 @@ void SetupSelfDestruction(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container,
rpl::producer<> updateTrigger) {
AddSkip(container);
AddSubsectionTitle(container, tr::lng_settings_destroy_title());
Ui::AddSkip(container);
Ui::AddSubsectionTitle(container, tr::lng_settings_destroy_title());
const auto session = &controller->session();
@ -486,7 +487,7 @@ void SetupSelfDestruction(
session->api().selfDestruct().daysAccountTTL()));
});
AddSkip(container);
Ui::AddSkip(container);
}
void ClearPaymentInfoBoxBuilder(
@ -551,8 +552,8 @@ auto ClearPaymentInfoBox(not_null<Main::Session*> session) {
void SetupBotsAndWebsites(
not_null<Window::SessionController*> controller,
not_null<Ui::VerticalLayout*> container) {
AddSkip(container);
AddSubsectionTitle(container, tr::lng_settings_security_bots());
Ui::AddSkip(container);
Ui::AddSubsectionTitle(container, tr::lng_settings_security_bots());
const auto session = &controller->session();
AddButton(
@ -563,7 +564,7 @@ void SetupBotsAndWebsites(
controller->show(ClearPaymentInfoBox(session));
});
AddSkip(container);
Ui::AddSkip(container);
}
void SetupBlockedList(
@ -658,8 +659,8 @@ void SetupSessionsList(
showOther(Sessions::Id());
});
AddSkip(container);
AddDividerText(container, tr::lng_settings_sessions_about());
Ui::AddSkip(container);
Ui::AddDividerText(container, tr::lng_settings_sessions_about());
}
void SetupGlobalTTLList(
@ -695,8 +696,8 @@ void SetupSecurity(
not_null<Ui::VerticalLayout*> container,
rpl::producer<> updateTrigger,
Fn<void(Type)> showOther) {
AddSkip(container, st::settingsPrivacySkip);
AddSubsectionTitle(container, tr::lng_settings_security());
Ui::AddSkip(container, st::settingsPrivacySkip);
Ui::AddSubsectionTitle(container, tr::lng_settings_security());
SetupCloudPassword(controller, container, showOther);
SetupGlobalTTLList(
@ -848,8 +849,8 @@ void SetupArchiveAndMute(
object_ptr<Ui::VerticalLayout>(container)));
const auto inner = wrap->entity();
AddSkip(inner);
AddSubsectionTitle(inner, tr::lng_settings_new_unknown());
Ui::AddSkip(inner);
Ui::AddSubsectionTitle(inner, tr::lng_settings_new_unknown());
const auto session = &controller->session();
@ -868,8 +869,8 @@ void SetupArchiveAndMute(
privacy->updateArchiveAndMute(toggled);
}, container->lifetime());
AddSkip(inner);
AddDividerText(inner, tr::lng_settings_auto_archive_about());
Ui::AddSkip(inner);
Ui::AddDividerText(inner, tr::lng_settings_auto_archive_about());
auto shown = rpl::single(
false

View file

@ -22,6 +22,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/wrap/vertical_layout.h"
#include "ui/layers/generic_box.h"
#include "ui/painter.h"
#include "ui/vertical_list.h"
#include "window/window_session_controller.h"
#include "styles/style_info.h"
#include "styles/style_layers.h"
@ -154,9 +155,9 @@ void InfoBox(
using namespace Settings;
const auto container = box->verticalLayout();
AddDivider(container);
AddSkip(container, st::sessionSubtitleSkip);
AddSubsectionTitle(container, tr::lng_sessions_info());
Ui::AddDivider(container);
Ui::AddSkip(container, st::sessionSubtitleSkip);
Ui::AddSubsectionTitle(container, tr::lng_sessions_info());
AddSessionInfoRow(
container,
@ -174,9 +175,9 @@ void InfoBox(
data.location,
st::menuIconAddress);
AddSkip(container, st::sessionValueSkip);
Ui::AddSkip(container, st::sessionValueSkip);
if (!data.location.isEmpty()) {
AddDividerText(container, tr::lng_sessions_location_about());
Ui::AddDividerText(container, tr::lng_sessions_location_about());
}
box->addButton(tr::lng_about_done(), [=] { box->closeBox(); });
@ -609,8 +610,8 @@ void Content::Inner::setupContent() {
tr::lng_settings_disconnect_all(),
st::infoBlockButton,
{ .icon = &st::infoIconBlock }));
AddSkip(terminateInner);
AddDividerText(
Ui::AddSkip(terminateInner);
Ui::AddDividerText(
terminateInner,
tr::lng_settings_logged_in_description());
@ -619,10 +620,10 @@ void Content::Inner::setupContent() {
content,
object_ptr<Ui::VerticalLayout>(content)))->setDuration(0);
const auto listInner = listWrap->entity();
AddSkip(listInner, st::sessionSubtitleSkip);
AddSubsectionTitle(listInner, tr::lng_settings_logged_in_title());
Ui::AddSkip(listInner, st::sessionSubtitleSkip);
Ui::AddSubsectionTitle(listInner, tr::lng_settings_logged_in_title());
_list = ListController::Add(listInner, session);
AddSkip(listInner);
Ui::AddSkip(listInner);
const auto skip = st::noContactsHeight / 2;
const auto placeholder = content->add(
@ -772,7 +773,7 @@ rpl::producer<QString> Websites::title() {
void Websites::setupContent(not_null<Window::SessionController*> controller) {
const auto container = Ui::CreateChild<Ui::VerticalLayout>(this);
AddSkip(container);
Ui::AddSkip(container);
const auto content = container->add(
object_ptr<Content>(container, controller));
content->setupContent();

View file

@ -0,0 +1,58 @@
/*
This file is part of Telegram Desktop,
the official desktop application for the Telegram messaging service.
For license and copyright information please follow this link:
https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
#include "ui/vertical_list.h"
#include "ui/widgets/box_content_divider.h"
#include "ui/widgets/labels.h"
#include "ui/wrap/padding_wrap.h"
#include "ui/wrap/vertical_layout.h"
#include "styles/style_layers.h"
#include "styles/style_settings.h"
namespace Ui {
void AddSkip(not_null<Ui::VerticalLayout*> container) {
AddSkip(container, st::settingsSectionSkip);
}
void AddSkip(not_null<Ui::VerticalLayout*> container, int skip) {
container->add(object_ptr<Ui::FixedHeightWidget>(
container,
skip));
}
void AddDivider(not_null<Ui::VerticalLayout*> container) {
container->add(object_ptr<Ui::BoxContentDivider>(container));
}
void AddDividerText(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> text) {
container->add(object_ptr<Ui::DividerLabel>(
container,
object_ptr<Ui::FlatLabel>(
container,
std::move(text),
st::boxDividerLabel),
st::settingsDividerLabelPadding));
}
not_null<Ui::FlatLabel*> AddSubsectionTitle(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> text,
style::margins addPadding,
const style::FlatLabel *st) {
return container->add(
object_ptr<Ui::FlatLabel>(
container,
std::move(text),
st ? *st : st::settingsSubsectionTitle),
st::settingsSubsectionTitlePadding + addPadding);
}
} // namespace Ui

View file

@ -0,0 +1,31 @@
/*
This file is part of Telegram Desktop,
the official desktop application for the Telegram messaging service.
For license and copyright information please follow this link:
https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
#pragma once
namespace style {
struct FlatLabel;
} // namespace style
namespace Ui {
class FlatLabel;
class VerticalLayout;
void AddSkip(not_null<Ui::VerticalLayout*> container);
void AddSkip(not_null<Ui::VerticalLayout*> container, int skip);
void AddDivider(not_null<Ui::VerticalLayout*> container);
void AddDividerText(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> text);
not_null<Ui::FlatLabel*> AddSubsectionTitle(
not_null<Ui::VerticalLayout*> container,
rpl::producer<QString> text,
style::margins addPadding = {},
const style::FlatLabel *st = nullptr);
} // namespace Ui

View file

@ -22,21 +22,18 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "ui/widgets/shadow.h"
#include "ui/wrap/slide_wrap.h"
#include "ui/wrap/vertical_layout.h"
#include "ui/wrap/vertical_layout_reorder.h"
#include "ui/text/format_values.h" // Ui::FormatPhone
#include "ui/text/text_utilities.h"
#include "ui/text/text_options.h"
#include "ui/painter.h"
#include "ui/empty_userpic.h"
#include "ui/vertical_list.h"
#include "ui/unread_badge_paint.h"
#include "base/call_delayed.h"
#include "inline_bots/bot_attach_web_view.h"
#include "mainwindow.h"
#include "storage/localstorage.h"
#include "storage/storage_account.h"
#include "support/support_templates.h"
#include "settings/settings_advanced.h"
#include "settings/settings_common.h"
#include "settings/settings_calls.h"
#include "settings/settings_information.h"
#include "info/profile/info_profile_badge.h"
@ -57,7 +54,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "main/main_session_settings.h"
#include "main/main_account.h"
#include "main/main_domain.h"
#include "mtproto/mtp_instance.h"
#include "mtproto/mtproto_config.h"
#include "data/data_document_media.h"
#include "data/data_folder.h"
@ -69,9 +65,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "styles/style_chat.h" // popupMenuExpandedSeparator
#include "styles/style_window.h"
#include "styles/style_widgets.h"
#include "styles/style_dialogs.h"
#include "styles/style_settings.h"
#include "styles/style_boxes.h"
#include "styles/style_info.h" // infoTopBarMenu
#include "styles/style_layers.h"
#include "styles/style_menu_icons.h"
@ -127,16 +121,16 @@ void ShowCallsBox(not_null<Window::SessionController*> window) {
groupCalls->hide(anim::type::instant);
groupCalls->toggleOn(state->groupCallsController.shownValue());
Settings::AddSubsectionTitle(
Ui::AddSubsectionTitle(
groupCalls->entity(),
tr::lng_call_box_groupcalls_subtitle());
state->groupCallsDelegate.setContent(groupCalls->entity()->add(
object_ptr<PeerListContent>(box, &state->groupCallsController),
{}));
state->groupCallsController.setDelegate(&state->groupCallsDelegate);
Settings::AddSkip(groupCalls->entity());
Settings::AddDivider(groupCalls->entity());
Settings::AddSkip(groupCalls->entity());
Ui::AddSkip(groupCalls->entity());
Ui::AddDivider(groupCalls->entity());
Ui::AddSkip(groupCalls->entity());
const auto content = box->addRow(
object_ptr<PeerListContent>(box, &state->callsController),
@ -234,15 +228,15 @@ void SetupMenuBots(
}
continue;
}
const auto button = Settings::AddButton(
const auto button = wrap->add(object_ptr<Ui::SettingsButton>(
wrap,
rpl::single(bot.name),
st::mainMenuButton);
st::mainMenuButton));
const auto menu = button->lifetime().make_state<
base::unique_qptr<Ui::PopupMenu>
>();
const auto icon = Ui::CreateChild<InlineBots::MenuBotIcon>(
button.get(),
button,
bot.media);
button->heightValue(
) | rpl::start_with_next([=](int height) {
@ -276,7 +270,7 @@ void SetupMenuBots(
const auto badge = bots->showMainMenuNewBadge(bot)
? Ui::CreateChild<Ui::PaddingWrap<Ui::FlatLabel>>(
button.get(),
button,
object_ptr<Ui::FlatLabel>(
button,
tr::lng_bot_side_menu_new(),

View file

@ -368,6 +368,8 @@ PRIVATE
ui/grouped_layout.h
ui/power_saving.cpp
ui/power_saving.h
ui/vertical_list.cpp
ui/vertical_list.h
ui/unread_badge_paint.cpp
ui/unread_badge_paint.h
ui/userpic_view.cpp