diff --git a/Telegram/SourceFiles/calls/group/ui/desktop_capture_choose_source.cpp b/Telegram/SourceFiles/calls/group/ui/desktop_capture_choose_source.cpp index a39e5ca458..e0be8b20b2 100644 --- a/Telegram/SourceFiles/calls/group/ui/desktop_capture_choose_source.cpp +++ b/Telegram/SourceFiles/calls/group/ui/desktop_capture_choose_source.cpp @@ -22,6 +22,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include #include +#include #include namespace Calls::Group::Ui::DesktopCapture { @@ -575,7 +576,15 @@ void ChooseSourceProcess::setupGeometryWithParent( not_null parent) { if (const auto handle = parent->windowHandle()) { _window->createWinId(); - const auto parentScreen = handle->screen(); + const auto parentScreen = [&] { + if (!::Platform::IsWayland()) { + if (const auto screen = QGuiApplication::screenAt( + parent->geometry().center())) { + return screen; + } + } + return handle->screen(); + }(); const auto myScreen = _window->windowHandle()->screen(); if (parentScreen && myScreen != parentScreen) { _window->windowHandle()->setScreen(parentScreen);