diff --git a/Telegram/SourceFiles/boxes/peers/edit_peer_info_box.cpp b/Telegram/SourceFiles/boxes/peers/edit_peer_info_box.cpp index 0ba6354f9..88464ed1c 100644 --- a/Telegram/SourceFiles/boxes/peers/edit_peer_info_box.cpp +++ b/Telegram/SourceFiles/boxes/peers/edit_peer_info_box.cpp @@ -620,13 +620,17 @@ object_ptr Controller::createTitleEdit() { local.x() + emojiToggle->width() * 3); }; - base::install_event_filter(container, [=](not_null event) { - const auto type = event->type(); - if (type == QEvent::Move || type == QEvent::Resize) { - crl::on_main(field, [=] { updateEmojiPanelGeometry(); }); - } - return base::EventFilterResult::Continue; - }); + + field->lifetime().make_state>([&] { + return base::install_event_filter(container, [=]( + not_null event) { + const auto type = event->type(); + if (type == QEvent::Move || type == QEvent::Resize) { + crl::on_main(field, [=] { updateEmojiPanelGeometry(); }); + } + return base::EventFilterResult::Continue; + }); + }()); field->widthValue() | rpl::start_with_next([=](int width) { const auto &p = st::editPeerTitleEmojiPosition;