Commit 038509e6 authored by Vlad Zahorodnii's avatar Vlad Zahorodnii
Browse files

[wayland] Provide correct input transformation matrix for client-side decorated clients

Summary: Pointer events must be in surface-local coordinates, not window geometry.

Reviewers: #kwin, davidedmundson

Reviewed By: #kwin, davidedmundson

Subscribers: kwin

Tags: #kwin

Maniphest Tasks: T10867

Differential Revision: https://phabricator.kde.org/D24456
parent 9f7a856d
...@@ -1789,9 +1789,9 @@ void XdgShellClient::doResizeSync() ...@@ -1789,9 +1789,9 @@ void XdgShellClient::doResizeSync()
QMatrix4x4 XdgShellClient::inputTransformation() const QMatrix4x4 XdgShellClient::inputTransformation() const
{ {
QMatrix4x4 m = Toplevel::inputTransformation(); QMatrix4x4 matrix;
m.translate(-borderLeft(), -borderTop()); matrix.translate(-m_bufferGeometry.x(), -m_bufferGeometry.y());
return m; return matrix;
} }
void XdgShellClient::installServerSideDecoration(KWayland::Server::ServerSideDecorationInterface *deco) void XdgShellClient::installServerSideDecoration(KWayland::Server::ServerSideDecorationInterface *deco)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment