From 8819938bf2258337ec5a6e5483d7faea15caf52b Mon Sep 17 00:00:00 2001 From: Ilya Fedin Date: Mon, 23 Nov 2020 10:00:54 +0400 Subject: [PATCH] Remove unneeded moveToScreen calls --- .../media/view/media_view_overlay_widget.cpp | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp b/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp index abea774deb..73615c240d 100644 --- a/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp +++ b/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp @@ -361,7 +361,6 @@ OverlayWidget::OverlayWidget() setWindowFlags(Qt::FramelessWindowHint); } updateGeometry(QApplication::primaryScreen()->geometry()); - moveToScreen(); setAttribute(Qt::WA_NoSystemBackground, true); setAttribute(Qt::WA_TranslucentBackground, true); setMouseTracking(true); @@ -435,6 +434,8 @@ void OverlayWidget::refreshLang() { } void OverlayWidget::moveToScreen() { + Expects(windowHandle()); + const auto widgetScreen = [&](auto &&widget) -> QScreen* { if (auto handle = widget ? widget->windowHandle() : nullptr) { return handle->screen(); @@ -445,12 +446,9 @@ void OverlayWidget::moveToScreen() { ? Core::App().activeWindow()->widget().get() : nullptr; const auto activeWindowScreen = widgetScreen(window); - const auto myScreen = widgetScreen(this); // Wayland doesn't support positioning, but Qt emits screenChanged anyway // and geometry of the widget become broken if (activeWindowScreen - && myScreen - && myScreen != activeWindowScreen && !Platform::IsWayland()) { windowHandle()->setScreen(activeWindowScreen); } @@ -1318,12 +1316,6 @@ void OverlayWidget::onScreenResized(int screen) { && windowHandle()->screen() == changed) { updateGeometry(changed->geometry()); } - if (!windowHandle() - || !windowHandle()->screen() - || !changed - || windowHandle()->screen() == changed) { - moveToScreen(); - } } void OverlayWidget::handleVisibleChanged(bool visible) {