diff --git a/Telegram/SourceFiles/api/api_blocked_peers.cpp b/Telegram/SourceFiles/api/api_blocked_peers.cpp index 0a79eb733b..ca8c953ec1 100644 --- a/Telegram/SourceFiles/api/api_blocked_peers.cpp +++ b/Telegram/SourceFiles/api/api_blocked_peers.cpp @@ -204,7 +204,7 @@ auto BlockedPeers::slice() -> rpl::producer { } return _slice ? _changes.events_starting_with_copy(*_slice) - : (_changes.events() | rpl::type_erased()); + : (_changes.events() | rpl::type_erased); } void BlockedPeers::request(int offset, Fn done) { diff --git a/Telegram/SourceFiles/api/api_cloud_password.cpp b/Telegram/SourceFiles/api/api_cloud_password.cpp index c87b9fc15f..359e9ad08f 100644 --- a/Telegram/SourceFiles/api/api_cloud_password.cpp +++ b/Telegram/SourceFiles/api/api_cloud_password.cpp @@ -68,7 +68,7 @@ void CloudPassword::clearUnconfirmedPassword() { rpl::producer CloudPassword::state() const { return _state ? _stateChanges.events_starting_with_copy(*_state) - : (_stateChanges.events() | rpl::type_erased()); + : (_stateChanges.events() | rpl::type_erased); } auto CloudPassword::stateCurrent() const diff --git a/Telegram/SourceFiles/apiwrap.cpp b/Telegram/SourceFiles/apiwrap.cpp index 122f851d1f..08f8364162 100644 --- a/Telegram/SourceFiles/apiwrap.cpp +++ b/Telegram/SourceFiles/apiwrap.cpp @@ -4776,7 +4776,7 @@ rpl::producer ApiWrap::contactSignupSilent() const { return _contactSignupSilent ? _contactSignupSilentChanges.events_starting_with_copy( *_contactSignupSilent) - : (_contactSignupSilentChanges.events() | rpl::type_erased()); + : (_contactSignupSilentChanges.events() | rpl::type_erased); } std::optional ApiWrap::contactSignupSilentCurrent() const { diff --git a/Telegram/SourceFiles/boxes/gift_premium_box.cpp b/Telegram/SourceFiles/boxes/gift_premium_box.cpp index 8ed8781e1a..7de7888ad7 100644 --- a/Telegram/SourceFiles/boxes/gift_premium_box.cpp +++ b/Telegram/SourceFiles/boxes/gift_premium_box.cpp @@ -459,7 +459,7 @@ void AddTable( ? tr::lng_gift_link_reason_giveaway : tr::lng_gift_link_reason_unclaimed)( Ui::Text::WithEntities - ) | rpl::type_erased()) + ) | rpl::type_erased) : tr::lng_gift_link_reason_chosen(Ui::Text::WithEntities))); reason->setClickHandlerFilter([=](const auto &...) { if (const auto window = show->resolveWindow()) { diff --git a/Telegram/SourceFiles/boxes/language_box.cpp b/Telegram/SourceFiles/boxes/language_box.cpp index b8a917316f..4efbef7503 100644 --- a/Telegram/SourceFiles/boxes/language_box.cpp +++ b/Telegram/SourceFiles/boxes/language_box.cpp @@ -1048,7 +1048,7 @@ void Content::setupContent( }; _activations = [=] { if (!main && !other) { - return rpl::never() | rpl::type_erased(); + return rpl::never() | rpl::type_erased; } else if (!main) { return other->activations(); } else if (!other) { @@ -1057,7 +1057,7 @@ void Content::setupContent( return rpl::merge( main->activations(), other->activations() - ) | rpl::type_erased(); + ) | rpl::type_erased; }; _changeChosen = [=](const QString &chosen) { if (main) { diff --git a/Telegram/SourceFiles/boxes/moderate_messages_box.cpp b/Telegram/SourceFiles/boxes/moderate_messages_box.cpp index ec249bf5ef..6ac54d7f7e 100644 --- a/Telegram/SourceFiles/boxes/moderate_messages_box.cpp +++ b/Telegram/SourceFiles/boxes/moderate_messages_box.cpp @@ -386,7 +386,7 @@ void CreateModerateMessagesBox( rpl::conditional( (ownedWrap ? ownedWrap->toggledValue() - : rpl::single(false) | rpl::type_erased()), + : rpl::single(false) | rpl::type_erased), tr::lng_restrict_user( lt_count, rpl::single(participants.size()) | tr::to_count()), @@ -627,7 +627,7 @@ void DeleteChatBox(not_null box, not_null peer) { ? tr::lng_profile_delete_conversation() | Ui::Text::ToBold() : rpl::single( userpicPeer->name() - ) | Ui::Text::ToBold() | rpl::type_erased(), + ) | Ui::Text::ToBold() | rpl::type_erased, box->getDelegate()->style().title)); Ui::AddSkip(container); diff --git a/Telegram/SourceFiles/boxes/peers/edit_contact_box.cpp b/Telegram/SourceFiles/boxes/peers/edit_contact_box.cpp index a55c575100..7c908edf5c 100644 --- a/Telegram/SourceFiles/boxes/peers/edit_contact_box.cpp +++ b/Telegram/SourceFiles/boxes/peers/edit_contact_box.cpp @@ -496,7 +496,7 @@ void Controller::setupPhotoButtons() { })) | rpl::map([=](const QString &text) { return text.isEmpty() ? Ui::kQEllipsis : text; }) - : rpl::single(_user->shortName()) | rpl::type_erased(); + : rpl::single(_user->shortName()) | rpl::type_erased; const auto inner = _box->verticalLayout(); Ui::AddSkip(inner); diff --git a/Telegram/SourceFiles/boxes/peers/edit_peer_info_box.cpp b/Telegram/SourceFiles/boxes/peers/edit_peer_info_box.cpp index 74bbfab03b..f0f2c92411 100644 --- a/Telegram/SourceFiles/boxes/peers/edit_peer_info_box.cpp +++ b/Telegram/SourceFiles/boxes/peers/edit_peer_info_box.cpp @@ -1069,13 +1069,13 @@ void Controller::fillDiscussionLinkButton() { ? _discussionLinkUpdates.events( ) | rpl::map([](ChannelData *chat) { return chat ? chat->name() : QString(); - }) | rpl::type_erased() + }) | rpl::type_erased : rpl::combine( tr::lng_manage_discussion_group_add(), _discussionLinkUpdates.events() ) | rpl::map([=](const QString &add, ChannelData *chat) { return chat ? chat->name() : add; - }) | rpl::type_erased(); + }) | rpl::type_erased; AddButtonWithText( _controls.buttonsLayout, std::move(text), diff --git a/Telegram/SourceFiles/boxes/peers/prepare_short_info_box.cpp b/Telegram/SourceFiles/boxes/peers/prepare_short_info_box.cpp index 3525db6611..8b7898e8c0 100644 --- a/Telegram/SourceFiles/boxes/peers/prepare_short_info_box.cpp +++ b/Telegram/SourceFiles/boxes/peers/prepare_short_info_box.cpp @@ -556,7 +556,7 @@ PreparedShortInfoUserpic PrepareShortInfoFallbackUserpic( 1, 1, 1)) - : (rpl::never() | rpl::type_erased()); + : (rpl::never() | rpl::type_erased); auto process = [=](not_null state) { if (photoId) { ProcessFullPhoto(peer, state, peer->owner().photo(*photoId)); diff --git a/Telegram/SourceFiles/boxes/share_box.cpp b/Telegram/SourceFiles/boxes/share_box.cpp index cd3274b6b3..00568e0616 100644 --- a/Telegram/SourceFiles/boxes/share_box.cpp +++ b/Telegram/SourceFiles/boxes/share_box.cpp @@ -238,7 +238,7 @@ void ShareBox::prepareCommentField() { _comment->heightValue(), (_bottomWidget ? _bottomWidget->heightValue() - : (rpl::single(0) | rpl::type_erased())) + : (rpl::single(0) | rpl::type_erased)) ) | rpl::start_with_next([=](int height, int comment, int bottom) { _comment->moveToLeft(0, height - bottom - comment); if (_bottomWidget) { @@ -323,7 +323,7 @@ void ShareBox::prepare() { _comment->heightValue(), (_bottomWidget ? _bottomWidget->heightValue() - : rpl::single(0) | rpl::type_erased()) + : rpl::single(0) | rpl::type_erased) ) | rpl::start_with_next([=] { updateScrollSkips(); }, _comment->lifetime()); diff --git a/Telegram/SourceFiles/boxes/star_gift_auction_box.cpp b/Telegram/SourceFiles/boxes/star_gift_auction_box.cpp index 0b553a0b8c..88b6cf3eb8 100644 --- a/Telegram/SourceFiles/boxes/star_gift_auction_box.cpp +++ b/Telegram/SourceFiles/boxes/star_gift_auction_box.cpp @@ -996,7 +996,7 @@ void AuctionBidBox(not_null box, AuctionBidBoxArgs &&args) { const auto preview = (now.startDate > base::unixtime::now()); const auto name = now.gift->resellTitle; state->finished = now.finished() - ? (rpl::single(true) | rpl::type_erased()) + ? (rpl::single(true) | rpl::type_erased) : (MinutesLeftTillValue(now.endDate) | rpl::map(!rpl::mappers::_1)); const auto date = [&](TimeId time) { diff --git a/Telegram/SourceFiles/calls/calls_top_bar.cpp b/Telegram/SourceFiles/calls/calls_top_bar.cpp index 75cf5fd3d0..74baba438f 100644 --- a/Telegram/SourceFiles/calls/calls_top_bar.cpp +++ b/Telegram/SourceFiles/calls/calls_top_bar.cpp @@ -319,12 +319,12 @@ void TopBar::initControls() { _call->mutedValue() | rpl::map(mapToState), rpl::single(GroupCall::InstanceState::Connected), rpl::single(TimeId(0)) - ) | rpl::type_erased() + ) | rpl::type_erased : rpl::combine( (_groupCall->mutedValue() | MapPushToTalkToActive() | rpl::distinct_until_changed() - | rpl::type_erased()), + | rpl::type_erased), rpl::single( _groupCall->instanceState() ) | rpl::then(_groupCall->instanceStateValue() | rpl::filter( @@ -584,7 +584,7 @@ void TopBar::subscribeToMembersChanges(not_null call) { const auto group = _groupCall.get(); const auto conference = group && group->conference(); auto realValue = conference - ? (rpl::single(group->sharedCall().get()) | rpl::type_erased()) + ? (rpl::single(group->sharedCall().get()) | rpl::type_erased) : peer->session().changes().peerFlagsValue( peer, Data::PeerUpdate::Flag::GroupCall diff --git a/Telegram/SourceFiles/calls/group/calls_group_members.cpp b/Telegram/SourceFiles/calls/group/calls_group_members.cpp index 41da9b5483..7a04d1a7b9 100644 --- a/Telegram/SourceFiles/calls/group/calls_group_members.cpp +++ b/Telegram/SourceFiles/calls/group/calls_group_members.cpp @@ -1587,7 +1587,7 @@ void Members::Controller::addMuteActionsToContextMenu( || (muteState == Row::State::RaisedHand); const auto mutedByMe = row->mutedByMe(); - auto mutesFromVolume = rpl::never() | rpl::type_erased(); + auto mutesFromVolume = rpl::never() | rpl::type_erased; const auto addVolumeItem = (!muted || isMe(participantPeer)); if (addVolumeItem) { @@ -1825,24 +1825,24 @@ void Members::setupAddMember(not_null call) { const auto conference = call->conference(); const auto canAddByPeer = [=](not_null peer) { if (conference) { - return rpl::single(true) | rpl::type_erased(); + return rpl::single(true) | rpl::type_erased; } else if (peer->isBroadcast()) { - return rpl::single(false) | rpl::type_erased(); + return rpl::single(false) | rpl::type_erased; } return rpl::combine( Data::CanSendValue(peer, ChatRestriction::SendOther, false), _call->joinAsValue() ) | rpl::map([=](bool can, not_null joinAs) { return can && joinAs->isSelf(); - }) | rpl::type_erased(); + }) | rpl::type_erased; }; const auto canInviteByLinkByPeer = [=](not_null peer) { if (conference) { - return rpl::single(true) | rpl::type_erased(); + return rpl::single(true) | rpl::type_erased; } const auto channel = peer->asChannel(); if (!channel) { - return rpl::single(false) | rpl::type_erased(); + return rpl::single(false) | rpl::type_erased; } return rpl::single( false @@ -1851,7 +1851,7 @@ void Members::setupAddMember(not_null call) { return Data::PeerFlagValue( channel, ChannelDataFlag::Username); - }) | rpl::flatten_latest()) | rpl::type_erased(); + }) | rpl::flatten_latest()) | rpl::type_erased; }; _canAddMembers = canAddByPeer(peer); _canInviteByLink = canInviteByLinkByPeer(peer); diff --git a/Telegram/SourceFiles/calls/group/ui/calls_group_scheduled_labels.cpp b/Telegram/SourceFiles/calls/group/ui/calls_group_scheduled_labels.cpp index 708cf3cdeb..3398089b62 100644 --- a/Telegram/SourceFiles/calls/group/ui/calls_group_scheduled_labels.cpp +++ b/Telegram/SourceFiles/calls/group/ui/calls_group_scheduled_labels.cpp @@ -42,7 +42,7 @@ rpl::producer StartsWhenText(rpl::producer date) { rpl::single(langDayOfMonthFull(dateDay.date())), lt_time, rpl::single(time) - ) | rpl::type_erased(); + ) | rpl::type_erased; auto tomorrow = tr::lng_group_call_starts_short_tomorrow( lt_time, rpl::single(time)); @@ -56,7 +56,7 @@ rpl::producer StartsWhenText(rpl::producer date) { std::min(tillAfter, kDay) * crl::time(1000) ) | rpl::map([=] { return rpl::duplicate(exact); - })) | rpl::flatten_latest() | rpl::type_erased(); + })) | rpl::flatten_latest() | rpl::type_erased; auto tomorrowAndAfter = rpl::single( std::move(tomorrow) @@ -64,7 +64,7 @@ rpl::producer StartsWhenText(rpl::producer date) { std::min(tillToday, kDay) * crl::time(1000) ) | rpl::map([=] { return rpl::duplicate(todayAndAfter); - })) | rpl::flatten_latest() | rpl::type_erased(); + })) | rpl::flatten_latest() | rpl::type_erased; auto full = rpl::single( rpl::duplicate(exact) @@ -72,7 +72,7 @@ rpl::producer StartsWhenText(rpl::producer date) { tillTomorrow * crl::time(1000) ) | rpl::map([=] { return rpl::duplicate(tomorrowAndAfter); - })) | rpl::flatten_latest() | rpl::type_erased(); + })) | rpl::flatten_latest() | rpl::type_erased; if (tillTomorrow > 0) { return full; diff --git a/Telegram/SourceFiles/chat_helpers/tabbed_selector.cpp b/Telegram/SourceFiles/chat_helpers/tabbed_selector.cpp index 25505715bf..a576c6f040 100644 --- a/Telegram/SourceFiles/chat_helpers/tabbed_selector.cpp +++ b/Telegram/SourceFiles/chat_helpers/tabbed_selector.cpp @@ -458,7 +458,7 @@ TabbedSelector::TabbedSelector( rpl::merge( (hasStickersTab() ? stickers()->scrollUpdated() | rpl::map_to(0) - : rpl::never() | rpl::type_erased()), + : rpl::never() | rpl::type_erased), _scroll->scrollTopChanges() ) | rpl::start_with_next([=] { handleScroll(); @@ -709,7 +709,7 @@ rpl::producer TabbedSelector::customEmojiChosen() const { rpl::producer TabbedSelector::fileChosen() const { auto never = rpl::never( - ) | rpl::type_erased(); + ) | rpl::type_erased; return rpl::merge( hasStickersTab() ? stickers()->chosen() : never, hasGifsTab() ? gifs()->fileChosen() : never, diff --git a/Telegram/SourceFiles/data/data_channel.cpp b/Telegram/SourceFiles/data/data_channel.cpp index 5306f059e2..b8cd47c2a0 100644 --- a/Telegram/SourceFiles/data/data_channel.cpp +++ b/Telegram/SourceFiles/data/data_channel.cpp @@ -1010,7 +1010,7 @@ rpl::producer ChannelData::unrestrictedByBoostsValue() const { return mgInfo ? mgInfo->unrestrictedByBoostsChanges.events_starting_with( unrestrictedByBoosts()) - : (rpl::single(false) | rpl::type_erased()); + : (rpl::single(false) | rpl::type_erased); } void ChannelData::setBoostsUnrestrict(int applied, int unrestrict) { diff --git a/Telegram/SourceFiles/data/data_peer.h b/Telegram/SourceFiles/data/data_peer.h index ea21b562eb..a70b036362 100644 --- a/Telegram/SourceFiles/data/data_peer.h +++ b/Telegram/SourceFiles/data/data_peer.h @@ -489,7 +489,7 @@ public: [[nodiscard]] auto barSettingsValue() const { return (_barSettings.current() & PeerBarSetting::Unknown) ? _barSettings.changes() - : (_barSettings.value() | rpl::type_erased()); + : (_barSettings.value() | rpl::type_erased); } [[nodiscard]] int paysPerMessage() const; void clearPaysPerMessage(); diff --git a/Telegram/SourceFiles/data/data_peer_values.cpp b/Telegram/SourceFiles/data/data_peer_values.cpp index 6af9a53c53..3828d03ee9 100644 --- a/Telegram/SourceFiles/data/data_peer_values.cpp +++ b/Telegram/SourceFiles/data/data_peer_values.cpp @@ -380,11 +380,11 @@ rpl::producer CanManageGroupCallValue(not_null peer) { return rpl::single(user->isSelf()); } else if (const auto chat = peer->asChat()) { return chat->amCreator() - ? (rpl::single(true) | rpl::type_erased()) + ? (rpl::single(true) | rpl::type_erased) : AdminRightValue(chat, flag); } else if (const auto channel = peer->asChannel()) { return channel->amCreator() - ? (rpl::single(true) | rpl::type_erased()) + ? (rpl::single(true) | rpl::type_erased) : AdminRightValue(channel, flag); } return rpl::single(false); diff --git a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp index 4926a27929..ac1273e4a9 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp @@ -3639,12 +3639,12 @@ void InnerWidget::trackResultsHistory(not_null history) { 1 ) | rpl::filter([=](const UserData::Flags::Change &change) { return change.diff & UserDataFlag::Forum; - }) | rpl::to_empty | rpl::type_erased() + }) | rpl::to_empty | rpl::type_erased : peer->asChannel()->flagsValue() | rpl::skip( 1 ) | rpl::filter([=](const ChannelData::Flags::Change &change) { return (change.diff & ChannelDataFlag::Forum); - }) | rpl::to_empty | rpl::type_erased(); + }) | rpl::to_empty | rpl::type_erased; std::move(changes) | rpl::start_with_next([=] { for (const auto &row : _searchResults) { if (row->item()->history()->peer == peer) { diff --git a/Telegram/SourceFiles/editor/editor_paint.cpp b/Telegram/SourceFiles/editor/editor_paint.cpp index 5f858ae27e..e10058239c 100644 --- a/Telegram/SourceFiles/editor/editor_paint.cpp +++ b/Telegram/SourceFiles/editor/editor_paint.cpp @@ -110,7 +110,7 @@ Paint::Paint( controllers->stickersPanelController ? controllers->stickersPanelController->stickerChosen( ) | rpl::to_empty - : rpl::never<>() | rpl::type_erased(), + : rpl::never<>() | rpl::type_erased, _scene->addsItem() ) | rpl::start_with_next([=] { clearRedoList(); diff --git a/Telegram/SourceFiles/export/view/export_view_progress.cpp b/Telegram/SourceFiles/export/view/export_view_progress.cpp index c7d28c7d47..c3639b24ff 100644 --- a/Telegram/SourceFiles/export/view/export_view_progress.cpp +++ b/Telegram/SourceFiles/export/view/export_view_progress.cpp @@ -289,7 +289,7 @@ rpl::producer ProgressWidget::skipFileClicks() const { rpl::producer<> ProgressWidget::cancelClicks() const { return _cancel ? (_cancel->clicks() | rpl::to_empty) - : (rpl::never<>() | rpl::type_erased()); + : (rpl::never<>() | rpl::type_erased); } rpl::producer<> ProgressWidget::doneClicks() const { diff --git a/Telegram/SourceFiles/history/history_inner_widget.cpp b/Telegram/SourceFiles/history/history_inner_widget.cpp index 560d757b8e..13c7ffa55e 100644 --- a/Telegram/SourceFiles/history/history_inner_widget.cpp +++ b/Telegram/SourceFiles/history/history_inner_widget.cpp @@ -509,7 +509,7 @@ void HistoryInner::setupSharingDisallowed() { : Data::PeerFlagValue( channel, ChannelDataFlag::NoForwards - ) | rpl::type_erased(); + ) | rpl::type_erased; auto rights = chat ? chat->adminRightsValue() diff --git a/Telegram/SourceFiles/history/history_item.cpp b/Telegram/SourceFiles/history/history_item.cpp index 6251e2ad09..a59c65647e 100644 --- a/Telegram/SourceFiles/history/history_item.cpp +++ b/Telegram/SourceFiles/history/history_item.cpp @@ -4763,7 +4763,7 @@ void HistoryItem::createServiceFromMtp(const MTPDmessageService &message) { : (*has) ? PeerHasThisCallValue( peer, - id) | rpl::skip(1) | rpl::type_erased() + id) | rpl::skip(1) | rpl::type_erased : rpl::producer(); if (!hasLink) { RemoveComponents(HistoryServiceOngoingCall::Bit()); diff --git a/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp b/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp index 67a5903847..d2e41245e3 100644 --- a/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp +++ b/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp @@ -4317,7 +4317,7 @@ rpl::producer SendDisabledBySlowmode(not_null peer) { using namespace rpl::mappers; const auto channel = peer->asChannel(); return (!channel || channel->amCreator()) - ? (rpl::single(false) | rpl::type_erased()) + ? (rpl::single(false) | rpl::type_erased) : rpl::combine( channel->slowmodeAppliedValue(), std::move(hasSendingMessage), diff --git a/Telegram/SourceFiles/history/view/history_view_chat_section.cpp b/Telegram/SourceFiles/history/view/history_view_chat_section.cpp index 502e5e1cc8..d054f5a1be 100644 --- a/Telegram/SourceFiles/history/view/history_view_chat_section.cpp +++ b/Telegram/SourceFiles/history/view/history_view_chat_section.cpp @@ -265,7 +265,7 @@ ChatWidget::ChatWidget( session().scheduledMessages().updates(_topic->owningHistory()) ) | rpl::map([=] { return session().scheduledMessages().hasFor(_topic); - }) | rpl::type_erased() + }) | rpl::type_erased : rpl::single(false), })) , _translateBar( @@ -756,7 +756,7 @@ void ChatWidget::setupComposeControls() { Data::CanSendAnythingValue(_peer), (_repliesRootId ? std::move(topicWriteRestrictions) - : (rpl::single(Data::SendError()) | rpl::type_erased())) + : (rpl::single(Data::SendError()) | rpl::type_erased)) ) | rpl::map([=]( const Main::FreezeInfo &info, auto, diff --git a/Telegram/SourceFiles/history/view/history_view_contact_status.cpp b/Telegram/SourceFiles/history/view/history_view_contact_status.cpp index 8553a4bd65..b4ead445b8 100644 --- a/Telegram/SourceFiles/history/view/history_view_contact_status.cpp +++ b/Telegram/SourceFiles/history/view/history_view_contact_status.cpp @@ -640,7 +640,7 @@ void ContactStatus::setupState(not_null peer, bool showInForum) { PeerCustomStatus(peer), ((channel && !showInForum) ? Data::PeerFlagValue(channel, ChannelData::Flag::Forum) - : (rpl::single(false) | rpl::type_erased())) + : (rpl::single(false) | rpl::type_erased)) ) | rpl::start_with_next([=]( State state, TextWithEntities status, @@ -1111,9 +1111,9 @@ TopicReopenBar::TopicReopenBar( void TopicReopenBar::setupState() { const auto channel = _topic->channel(); auto canToggle = !channel - ? (rpl::single(false) | rpl::type_erased()) + ? (rpl::single(false) | rpl::type_erased) : (_topic->my() || channel->amCreator()) - ? (rpl::single(true) | rpl::type_erased()) + ? (rpl::single(true) | rpl::type_erased) : channel->adminRightsValue( ) | rpl::map([=] { return _topic->canToggleClosed(); }); diff --git a/Telegram/SourceFiles/history/view/history_view_group_call_bar.cpp b/Telegram/SourceFiles/history/view/history_view_group_call_bar.cpp index 68d952d869..95cb34fe41 100644 --- a/Telegram/SourceFiles/history/view/history_view_group_call_bar.cpp +++ b/Telegram/SourceFiles/history/view/history_view_group_call_bar.cpp @@ -389,7 +389,7 @@ rpl::producer GroupCallBarContentByPeer( Data::PeerUpdate::Flag::GroupCall), Core::App().calls().currentGroupCallValue(), ((showInForum || !channel) - ? (rpl::single(false) | rpl::type_erased()) + ? (rpl::single(false) | rpl::type_erased) : Data::PeerFlagValue(channel, ChannelData::Flag::Forum)) ) | rpl::map([=](auto, Calls::GroupCall *current, bool hiddenByForum) { const auto call = peer->groupCall(); diff --git a/Telegram/SourceFiles/history/view/history_view_scheduled_section.cpp b/Telegram/SourceFiles/history/view/history_view_scheduled_section.cpp index 398e78c6d8..b5264dae0a 100644 --- a/Telegram/SourceFiles/history/view/history_view_scheduled_section.cpp +++ b/Telegram/SourceFiles/history/view/history_view_scheduled_section.cpp @@ -308,7 +308,7 @@ void ScheduledWidget::setupComposeControls() { .type = Controls::WriteRestrictionType::Rights, .boostsToLift = text.boostsToLift, } : Controls::WriteRestriction(); - }) | rpl::type_erased(); + }) | rpl::type_erased; }() : [&] { return rpl::combine( @@ -342,7 +342,7 @@ void ScheduledWidget::setupComposeControls() { .type = Controls::WriteRestrictionType::Rights, .boostsToLift = text.boostsToLift, } : Controls::WriteRestriction(); - }) | rpl::type_erased(); + }) | rpl::type_erased; }(); _composeControls->setHistory({ .history = _history.get(), diff --git a/Telegram/SourceFiles/history/view/history_view_translate_tracker.cpp b/Telegram/SourceFiles/history/view/history_view_translate_tracker.cpp index d16eee60e6..f91dea0a9e 100644 --- a/Telegram/SourceFiles/history/view/history_view_translate_tracker.cpp +++ b/Telegram/SourceFiles/history/view/history_view_translate_tracker.cpp @@ -55,7 +55,7 @@ void TranslateTracker::setup() { const auto channel = peer->asChannel(); auto autoTranslationValue = (channel - ? (channel->flagsValue() | rpl::type_erased()) + ? (channel->flagsValue() | rpl::type_erased) : rpl::single(Data::Flags::Change({}, {})) ) | rpl::map([=](Data::Flags::Change data) { return (data.value & ChannelDataFlag::AutoTranslation); diff --git a/Telegram/SourceFiles/info/bot/starref/info_bot_starref_join_widget.cpp b/Telegram/SourceFiles/info/bot/starref/info_bot_starref_join_widget.cpp index 0343af54bf..87d91dae82 100644 --- a/Telegram/SourceFiles/info/bot/starref/info_bot_starref_join_widget.cpp +++ b/Telegram/SourceFiles/info/bot/starref/info_bot_starref_join_widget.cpp @@ -1040,7 +1040,7 @@ std::unique_ptr Widget::setupTop() { st::infoTopBarScale); _back->setDuration(0); _back->toggleOn(isLayer - ? _backEnabled.value() | rpl::type_erased() + ? _backEnabled.value() | rpl::type_erased : rpl::single(true)); _back->entity()->addClickHandler([=] { controller->showBackFromStack(); diff --git a/Telegram/SourceFiles/info/bot/starref/info_bot_starref_setup_widget.cpp b/Telegram/SourceFiles/info/bot/starref/info_bot_starref_setup_widget.cpp index 46183eb688..30296e9cfa 100644 --- a/Telegram/SourceFiles/info/bot/starref/info_bot_starref_setup_widget.cpp +++ b/Telegram/SourceFiles/info/bot/starref/info_bot_starref_setup_widget.cpp @@ -952,7 +952,7 @@ std::unique_ptr Widget::setupTop() { st::infoTopBarScale); _back->setDuration(0); _back->toggleOn(isLayer - ? _backEnabled.value() | rpl::type_erased() + ? _backEnabled.value() | rpl::type_erased : rpl::single(true)); _back->entity()->addClickHandler([=] { controller->showBackFromStack(); diff --git a/Telegram/SourceFiles/info/channel_statistics/boosts/create_giveaway_box.cpp b/Telegram/SourceFiles/info/channel_statistics/boosts/create_giveaway_box.cpp index 2e0458f308..a04bd064aa 100644 --- a/Telegram/SourceFiles/info/channel_statistics/boosts/create_giveaway_box.cpp +++ b/Telegram/SourceFiles/info/channel_statistics/boosts/create_giveaway_box.cpp @@ -307,7 +307,7 @@ void CreateGiveawayBox( return rpl::combine( state->typeValue.value(), state->toAwardAmountChanged.events_starting_with( - rpl::empty_value()) | rpl::type_erased() + rpl::empty_value()) | rpl::type_erased ) | rpl::map([=](GiveawayType type, auto) { return (type == GiveawayType::Credits) || !isSpecificUsers(); }); @@ -323,7 +323,7 @@ void CreateGiveawayBox( tr::lng_giveaway_award()), rpl::conditional( isPrepaidCredits - ? rpl::single(true) | rpl::type_erased() + ? rpl::single(true) | rpl::type_erased : state->typeValue.value() | rpl::map( rpl::mappers::_1 == GiveawayType::Credits), (peer->isMegagroup() @@ -1144,20 +1144,20 @@ void CreateGiveawayBox( Ui::AddSkip(additionalWrap); auto monthsValue = prepaid - ? (rpl::single(prepaid->months) | rpl::type_erased()) + ? (rpl::single(prepaid->months) | rpl::type_erased) : state->chosenMonths.value(); const auto usersCountByType = [=](GiveawayType type) { if (!isSpecificUsers()) { - return state->sliderValue.value() | rpl::type_erased(); + return state->sliderValue.value() | rpl::type_erased; } return state->toAwardAmountChanged.events_starting_with_copy( rpl::empty ) | rpl::map([=] { return int(state->selectedToAward.size()); - }) | rpl::type_erased(); + }) | rpl::type_erased; }; auto usersCountValue = prepaid - ? (rpl::single(prepaid->quantity) | rpl::type_erased()) + ? (rpl::single(prepaid->quantity) | rpl::type_erased) : state->typeValue.value( ) | rpl::map(usersCountByType) | rpl::flatten_latest(); @@ -1354,7 +1354,7 @@ void CreateGiveawayBox( tr::lng_giveaway_start(), tr::lng_giveaway_award()), (prepaid && prepaid->boosts) - ? rpl::single(prepaid->boosts) | rpl::type_erased() + ? rpl::single(prepaid->boosts) | rpl::type_erased : rpl::conditional( state->typeValue.value( ) | rpl::map(rpl::mappers::_1 == GiveawayType::Credits), diff --git a/Telegram/SourceFiles/info/channel_statistics/earn/info_channel_earn_list.cpp b/Telegram/SourceFiles/info/channel_statistics/earn/info_channel_earn_list.cpp index d15bbc9bf8..681604aa0d 100644 --- a/Telegram/SourceFiles/info/channel_statistics/earn/info_channel_earn_list.cpp +++ b/Telegram/SourceFiles/info/channel_statistics/earn/info_channel_earn_list.cpp @@ -393,7 +393,7 @@ void InnerWidget::fill() { ); auto creditsStateValue = bot - ? rpl::single(Data::CreditsEarnStatistics()) | rpl::type_erased() + ? rpl::single(Data::CreditsEarnStatistics()) | rpl::type_erased : rpl::single(creditsData) | rpl::then( _stateUpdated.events( ) | rpl::map([this] { return _state.creditsEarn; }) diff --git a/Telegram/SourceFiles/info/media/info_media_provider.cpp b/Telegram/SourceFiles/info/media/info_media_provider.cpp index 14553f7958..81359358f9 100644 --- a/Telegram/SourceFiles/info/media/info_media_provider.cpp +++ b/Telegram/SourceFiles/info/media/info_media_provider.cpp @@ -100,7 +100,7 @@ rpl::producer Provider::hasSelectRestrictionChanges() { : Data::PeerFlagValue( channel, ChannelDataFlag::NoForwards - ) | rpl::type_erased(); + ) | rpl::type_erased; auto rights = chat ? chat->adminRightsValue() diff --git a/Telegram/SourceFiles/info/peer_gifts/info_peer_gifts_common.cpp b/Telegram/SourceFiles/info/peer_gifts/info_peer_gifts_common.cpp index 3f4e4d66fe..215fb11d79 100644 --- a/Telegram/SourceFiles/info/peer_gifts/info_peer_gifts_common.cpp +++ b/Telegram/SourceFiles/info/peer_gifts/info_peer_gifts_common.cpp @@ -1151,7 +1151,7 @@ rpl::producer> GiftStickerValue( packs.load(); if (const auto result = packs.lookup(months)) { return result->sticker() - ? (rpl::single(not_null(result)) | rpl::type_erased()) + ? (rpl::single(not_null(result)) | rpl::type_erased) : rpl::never>(); } return packs.updated( @@ -1161,9 +1161,9 @@ rpl::producer> GiftStickerValue( return document && document->sticker(); }) | rpl::take(1) | rpl::map([=](DocumentData *document) { return not_null(document); - }) | rpl::type_erased(); + }) | rpl::type_erased; }, [&](GiftTypeStars data) { - return rpl::single(data.info.document) | rpl::type_erased(); + return rpl::single(data.info.document) | rpl::type_erased; }); } diff --git a/Telegram/SourceFiles/info/profile/info_profile_actions.cpp b/Telegram/SourceFiles/info/profile/info_profile_actions.cpp index 64bfff3ec6..586aadb6c8 100644 --- a/Telegram/SourceFiles/info/profile/info_profile_actions.cpp +++ b/Telegram/SourceFiles/info/profile/info_profile_actions.cpp @@ -2174,7 +2174,7 @@ void DetailsFiller::addReportReaction( Info::Profile::IsContactValue(user), forceHidden->value(), !rpl::mappers::_1 && !rpl::mappers::_2 - ) | rpl::type_erased() + ) | rpl::type_erased : (forceHidden->value() | rpl::map(!rpl::mappers::_1)); const auto sent = [=] { *forceHidden = true; diff --git a/Telegram/SourceFiles/info/profile/info_profile_top_bar.cpp b/Telegram/SourceFiles/info/profile/info_profile_top_bar.cpp index e094d74d65..bbf587bab6 100644 --- a/Telegram/SourceFiles/info/profile/info_profile_top_bar.cpp +++ b/Telegram/SourceFiles/info/profile/info_profile_top_bar.cpp @@ -1856,7 +1856,7 @@ void TopBar::setupButtons( _back->QWidget::show(); _back->setDuration(0); _back->toggleOn(isLayer || isSide - ? (_backToggles.value() | rpl::type_erased()) + ? (_backToggles.value() | rpl::type_erased) : rpl::single(wrap == Wrap::Narrow)); _back->entity()->clicks() | rpl::to_empty | rpl::start_to_stream( _backClicks, diff --git a/Telegram/SourceFiles/info/profile/info_profile_values.cpp b/Telegram/SourceFiles/info/profile/info_profile_values.cpp index 6f0bb4599c..0a21f12a91 100644 --- a/Telegram/SourceFiles/info/profile/info_profile_values.cpp +++ b/Telegram/SourceFiles/info/profile/info_profile_values.cpp @@ -65,9 +65,9 @@ auto PlainPrimaryUsernameValue(not_null peer) { peer ) | rpl::map([=](std::vector usernames) { if (!usernames.empty()) { - return rpl::single(usernames.front().text) | rpl::type_erased(); + return rpl::single(usernames.front().text) | rpl::type_erased; } else { - return PlainUsernameValue(peer) | rpl::type_erased(); + return PlainUsernameValue(peer) | rpl::type_erased; } }) | rpl::flatten_latest(); } @@ -161,7 +161,7 @@ rpl::producer UsernameValue( bool primary) { return (primary ? PlainPrimaryUsernameValue(peer) - : (PlainUsernameValue(peer) | rpl::type_erased()) + : (PlainUsernameValue(peer) | rpl::type_erased) ) | rpl::map([](QString &&username) { return username.isEmpty() ? QString() @@ -260,7 +260,7 @@ rpl::producer LinkValue( MsgId rootId) { return (primary ? PlainPrimaryUsernameValue(peer) - : PlainUsernameValue(peer) | rpl::type_erased() + : PlainUsernameValue(peer) | rpl::type_erased ) | rpl::map([=](QString &&username) { if (username.isEmpty()) { if (const auto topic diff --git a/Telegram/SourceFiles/info/saved/info_saved_music_common.cpp b/Telegram/SourceFiles/info/saved/info_saved_music_common.cpp index 53a46281b6..9fd915d7fc 100644 --- a/Telegram/SourceFiles/info/saved/info_saved_music_common.cpp +++ b/Telegram/SourceFiles/info/saved/info_saved_music_common.cpp @@ -44,7 +44,7 @@ void SetupSavedMusic( 1 ) | rpl::map([=](const Data::SavedMusicSlice &data) { return data.size() ? data[0].get() : nullptr; - }) | rpl::type_erased() + }) | rpl::type_erased : rpl::single((HistoryItem*)(nullptr)); const auto divider = container->add( diff --git a/Telegram/SourceFiles/media/stories/media_stories_reply.cpp b/Telegram/SourceFiles/media/stories/media_stories_reply.cpp index f88ca8a82c..73e422bc27 100644 --- a/Telegram/SourceFiles/media/stories/media_stories_reply.cpp +++ b/Telegram/SourceFiles/media/stories/media_stories_reply.cpp @@ -932,7 +932,7 @@ void ReplyArea::show( .text = tr::lng_video_stream_comments_disabled(tr::now), .type = WriteRestrictionType::Rights, }; - }) | rpl::type_erased() + }) | rpl::type_erased : Data::CanSendAnythingValue( peer ) | rpl::map([=](bool can) { diff --git a/Telegram/SourceFiles/media/stories/media_stories_stealth.cpp b/Telegram/SourceFiles/media/stories/media_stories_stealth.cpp index 789deb84bc..731b57c8f9 100644 --- a/Telegram/SourceFiles/media/stories/media_stories_stealth.cpp +++ b/Telegram/SourceFiles/media/stories/media_stories_stealth.cpp @@ -234,7 +234,7 @@ struct State { tr::now, lt_left, TimeLeftText(left)); - }) | rpl::type_erased(); + }) | rpl::type_erased; }) | rpl::flatten_latest(); auto result = object_ptr( diff --git a/Telegram/SourceFiles/media/streaming/media_streaming_video_track.cpp b/Telegram/SourceFiles/media/streaming/media_streaming_video_track.cpp index b9518125fd..bf5521c2cd 100644 --- a/Telegram/SourceFiles/media/streaming/media_streaming_video_track.cpp +++ b/Telegram/SourceFiles/media/streaming/media_streaming_video_track.cpp @@ -198,15 +198,15 @@ VideoTrackObject::VideoTrackObject( rpl::producer<> VideoTrackObject::checkNextFrame() const { return interrupted() - ? (rpl::complete<>() | rpl::type_erased()) + ? (rpl::complete<>() | rpl::type_erased) : !_shared->firstPresentHappened() - ? (_checkNextFrame.events() | rpl::type_erased()) + ? (_checkNextFrame.events() | rpl::type_erased) : _checkNextFrame.events_starting_with({}); } rpl::producer<> VideoTrackObject::waitingForData() const { return interrupted() - ? (rpl::never() | rpl::type_erased()) + ? (rpl::never() | rpl::type_erased) : _waitingForData.events(); } diff --git a/Telegram/SourceFiles/passport/passport_panel_controller.cpp b/Telegram/SourceFiles/passport/passport_panel_controller.cpp index 1abfa686be..14b1a37336 100644 --- a/Telegram/SourceFiles/passport/passport_panel_controller.cpp +++ b/Telegram/SourceFiles/passport/passport_panel_controller.cpp @@ -1343,7 +1343,7 @@ void PanelController::processVerificationNeeded( return field->verification.call != nullptr; }) | rpl::map([=](not_null field) { return field->verification.call->getText(); - })) : (rpl::single(QString()) | rpl::type_erased()), + })) : (rpl::single(QString()) | rpl::type_erased), rpl::duplicate( update diff --git a/Telegram/SourceFiles/payments/ui/payments_reaction_box.cpp b/Telegram/SourceFiles/payments/ui/payments_reaction_box.cpp index 00dae69e09..1588b0095c 100644 --- a/Telegram/SourceFiles/payments/ui/payments_reaction_box.cpp +++ b/Telegram/SourceFiles/payments/ui/payments_reaction_box.cpp @@ -547,10 +547,10 @@ void PaidReactionsBox( colorings, (videoStreamAdmin ? rpl::single(state->chosen.current()) - : state->chosen.value() | rpl::type_erased()), + : state->chosen.value() | rpl::type_erased), (videoStreamAdmin ? rpl::single(state->shownPeer.current()) - : state->shownPeer.value() | rpl::type_erased()), + : state->shownPeer.value() | rpl::type_erased), [=](uint64 barePeerId) { state->shownPeer = state->savedShownPeer = barePeerId; }, diff --git a/Telegram/SourceFiles/platform/linux/tray_linux.cpp b/Telegram/SourceFiles/platform/linux/tray_linux.cpp index e15c297ced..906278f458 100644 --- a/Telegram/SourceFiles/platform/linux/tray_linux.cpp +++ b/Telegram/SourceFiles/platform/linux/tray_linux.cpp @@ -387,7 +387,7 @@ rpl::producer<> Tray::aboutToShowRequests() const { _aboutToShowRequests.events(), _menu ? base::qt_signal_producer(_menu.get(), &QMenu::aboutToShow) - : rpl::never<>() | rpl::type_erased()); + : rpl::never<>() | rpl::type_erased); } rpl::producer<> Tray::showFromTrayRequests() const { diff --git a/Telegram/SourceFiles/settings/settings_business.cpp b/Telegram/SourceFiles/settings/settings_business.cpp index bc6c1172fa..498081852e 100644 --- a/Telegram/SourceFiles/settings/settings_business.cpp +++ b/Telegram/SourceFiles/settings/settings_business.cpp @@ -682,7 +682,7 @@ base::weak_qptr Business::createPinnedToTop( st::infoTopBarScale); _back->setDuration(0); _back->toggleOn(isLayer - ? _backToggles.value() | rpl::type_erased() + ? _backToggles.value() | rpl::type_erased : rpl::single(true)); _back->entity()->addClickHandler([=] { _showBack.fire({}); diff --git a/Telegram/SourceFiles/settings/settings_credits.cpp b/Telegram/SourceFiles/settings/settings_credits.cpp index 5ec6605795..796a4694e5 100644 --- a/Telegram/SourceFiles/settings/settings_credits.cpp +++ b/Telegram/SourceFiles/settings/settings_credits.cpp @@ -869,7 +869,7 @@ base::weak_qptr Credits::createPinnedToTop( st::infoTopBarScale); _back->setDuration(0); _back->toggleOn(isLayer - ? _backToggles.value() | rpl::type_erased() + ? _backToggles.value() | rpl::type_erased : rpl::single(true)); _back->entity()->addClickHandler([=] { _showBack.fire({}); diff --git a/Telegram/SourceFiles/settings/settings_premium.cpp b/Telegram/SourceFiles/settings/settings_premium.cpp index 97d2900ce5..dd60153664 100644 --- a/Telegram/SourceFiles/settings/settings_premium.cpp +++ b/Telegram/SourceFiles/settings/settings_premium.cpp @@ -1314,7 +1314,7 @@ base::weak_qptr Premium::createPinnedToTop( st::infoTopBarScale); _back->setDuration(0); _back->toggleOn(isLayer - ? _backToggles.value() | rpl::type_erased() + ? _backToggles.value() | rpl::type_erased : rpl::single(true)); _back->entity()->addClickHandler([=] { _showBack.fire({}); diff --git a/Telegram/SourceFiles/ui/boxes/peer_qr_box.cpp b/Telegram/SourceFiles/ui/boxes/peer_qr_box.cpp index dcdc020e4f..3b111f31b7 100644 --- a/Telegram/SourceFiles/ui/boxes/peer_qr_box.cpp +++ b/Telegram/SourceFiles/ui/boxes/peer_qr_box.cpp @@ -457,7 +457,7 @@ void FillPeerQrBox( const auto usernameValue = [=] { return (customLink || !peer) - ? (rpl::single(QString()) | rpl::type_erased()) + ? (rpl::single(QString()) | rpl::type_erased) : Info::Profile::UsernameValue(peer, true) | rpl::map( [](const auto &username) { return username.text; }); }; @@ -467,7 +467,7 @@ void FillPeerQrBox( : peer ? Info::Profile::LinkValue(peer, true) | rpl::map( [](const auto &link) { return link.text; }) - : (rpl::single(QString()) | rpl::type_erased()); + : (rpl::single(QString()) | rpl::type_erased); }; const auto userpic = Ui::CreateChild(box); diff --git a/Telegram/SourceFiles/ui/controls/stars_rating.cpp b/Telegram/SourceFiles/ui/controls/stars_rating.cpp index 10d8d02085..cb8f449e4c 100644 --- a/Telegram/SourceFiles/ui/controls/stars_rating.cpp +++ b/Telegram/SourceFiles/ui/controls/stars_rating.cpp @@ -239,9 +239,9 @@ void AboutRatingBox( ? tr::lng_stars_rating_about( lt_name, rpl::single(TextWithEntities{ name }), - Text::RichLangValue) | rpl::type_erased() + Text::RichLangValue) | rpl::type_erased : tr::lng_stars_rating_about_your( - Text::RichLangValue) | rpl::type_erased(); + Text::RichLangValue) | rpl::type_erased; if (data.level < 0) { auto text = (data.stars < 0) diff --git a/Telegram/SourceFiles/ui/widgets/expandable_peer_list.cpp b/Telegram/SourceFiles/ui/widgets/expandable_peer_list.cpp index a033a17b64..ee3c6d33a9 100644 --- a/Telegram/SourceFiles/ui/widgets/expandable_peer_list.cpp +++ b/Telegram/SourceFiles/ui/widgets/expandable_peer_list.cpp @@ -169,7 +169,7 @@ void AddExpandablePeerList( (u"(%1) "_q).arg(it->second) }.append(richName); }) - : std::move(name) | rpl::type_erased(), + : std::move(name) | rpl::type_erased, st::defaultBoxCheckbox, std::make_unique( st::defaultCheck, diff --git a/Telegram/SourceFiles/window/window_main_menu.cpp b/Telegram/SourceFiles/window/window_main_menu.cpp index b2cea95471..66d6ac88bf 100644 --- a/Telegram/SourceFiles/window/window_main_menu.cpp +++ b/Telegram/SourceFiles/window/window_main_menu.cpp @@ -545,7 +545,7 @@ void MainMenu::setupArchive() { const auto now = folder(); auto folderValue = now - ? (rpl::single(now) | rpl::type_erased()) + ? (rpl::single(now) | rpl::type_erased) : controller->session().data().chatsListChanges( ) | rpl::filter([](Data::Folder *folder) { return folder && (folder->id() == Data::Folder::kId); diff --git a/Telegram/SourceFiles/window/window_session_controller.cpp b/Telegram/SourceFiles/window/window_session_controller.cpp index 03c62c8c9f..857986c1ba 100644 --- a/Telegram/SourceFiles/window/window_session_controller.cpp +++ b/Telegram/SourceFiles/window/window_session_controller.cpp @@ -3406,7 +3406,7 @@ void SessionController::cacheChatThemeDone( rpl::merge( session().downloaderTaskFinished(), ((giftSymbol && !giftSymbol->ready()) - ? (_giftSymbolLoaded.events() | rpl::type_erased()) + ? (_giftSymbolLoaded.events() | rpl::type_erased) : rpl::never()) ) | rpl::filter([=] { const auto i = _customChatThemes.find(key); diff --git a/Telegram/lib_rpl b/Telegram/lib_rpl index f4eb411668..724b79e83c 160000 --- a/Telegram/lib_rpl +++ b/Telegram/lib_rpl @@ -1 +1 @@ -Subproject commit f4eb411668573d32fc430e27260728be0376ea6c +Subproject commit 724b79e83cb2a97968aae5ade48807e6794e2011 diff --git a/Telegram/lib_ui b/Telegram/lib_ui index bfca125f40..fb004e6d2a 160000 --- a/Telegram/lib_ui +++ b/Telegram/lib_ui @@ -1 +1 @@ -Subproject commit bfca125f4053880eecd6faef9a0fe41e32a13b20 +Subproject commit fb004e6d2a92212edd10f832cffeaad19efef3c4