summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorVlad Zahorodnii <vlad.zahorodnii@kde.org>2023-08-25 10:15:29 +0300
committerVlad Zahorodnii <vlad.zahorodnii@kde.org>2023-09-25 14:31:44 +0300
commitaa5a485822270e987d88d7452d54aec45a8f4e19 (patch)
treec85e9d47349d398a6080aa10d978b9d1ffafc615 /src
parenta1d1eb74fef8d79a9788746bb8eb9e9471978d82 (diff)
Client: Remove some surface commits
The buffer transform, input and opaque regions are double buffered state. They will be applied on the next surface commit. But the issue with them is that the relevant code makes surface commits too. It's undesired as it can lead to qtwayland committing partial state, for example it can break xdg surface window geometry. This change removes hidden surface commits. The relevant properties will be applied on the next frame. Change-Id: I1c40c9a5430fb6b91d7643b20d628f8a9a9d501a Reviewed-by: David Edmundson <davidedmundson@kde.org> (cherry picked from commit e8cff6fb39c0fd01548bce18542820a6612dbe49)
Diffstat (limited to 'src')
-rw-r--r--src/client/qwaylandwindow.cpp4
-rw-r--r--src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp3
2 files changed, 0 insertions, 7 deletions
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
index d8d67859a..15044d660 100644
--- a/src/client/qwaylandwindow.cpp
+++ b/src/client/qwaylandwindow.cpp
@@ -591,8 +591,6 @@ void QWaylandWindow::setMask(const QRegion &mask)
else
setOpaqueArea(mMask);
}
-
- mSurface->commit();
}
void QWaylandWindow::setAlertState(bool enabled)
@@ -980,8 +978,6 @@ void QWaylandWindow::handleContentOrientationChange(Qt::ScreenOrientation orient
Q_UNREACHABLE();
}
mSurface->set_buffer_transform(transform);
- // set_buffer_transform is double buffered, we need to commit.
- mSurface->commit();
}
void QWaylandWindow::setOrientationMask(Qt::ScreenOrientations mask)
diff --git a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
index 1872fff44..e5dde262c 100644
--- a/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
+++ b/src/plugins/shellintegration/xdg-shell/qwaylandxdgshell.cpp
@@ -395,9 +395,6 @@ bool QWaylandXdgSurface::wantsDecorations() const
void QWaylandXdgSurface::propagateSizeHints()
{
setSizeHints();
-
- if (m_toplevel && m_window)
- m_window->commit();
}
void QWaylandXdgSurface::setWindowGeometry(const QRect &rect)