diff -Nru qtwayland-opensource-src-5.15.10/debian/changelog qtwayland-opensource-src-5.15.10/debian/changelog --- qtwayland-opensource-src-5.15.10/debian/changelog 2024-12-13 10:45:43.000000000 +0800 +++ qtwayland-opensource-src-5.15.10/debian/changelog 2025-01-22 16:08:30.000000000 +0800 @@ -1,3 +1,22 @@ +qtwayland-opensource-src (5.15.10-2ok30) huanghe; urgency=medium + + * Only use keyboard focus window as transisentparent for popup and tooltip type windows + + -- Jie Liu <liujie01@kylinos.cn> Wed, 22 Jan 2025 16:08:30 +0800 + +qtwayland-opensource-src (5.15.10-2ok29) huanghe; urgency=medium + + * Use keyboard focus window as transisentparent if QGuiapplication::focuswindow() is null + + -- Jie Liu <liujie01@kylinos.cn> Wed, 08 Jan 2025 18:24:39 +0800 + +qtwayland-opensource-src (5.15.10-2ok28) huanghe; urgency=medium + + * set_constraint_adjustment in setPopup + * update wayland cursor pos when data device moving + + -- Jie Liu <liujie01@kylinos.cn> Thu, 02 Jan 2025 17:21:28 +0800 + qtwayland-opensource-src (5.15.10-2ok27) huanghe; urgency=medium * add support for kde-primary-output protocol diff -Nru qtwayland-opensource-src-5.15.10/debian/patches/0057-update-changelog-5.15.10-2ok27.patch qtwayland-opensource-src-5.15.10/debian/patches/0057-update-changelog-5.15.10-2ok27.patch --- qtwayland-opensource-src-5.15.10/debian/patches/0057-update-changelog-5.15.10-2ok27.patch 1970-01-01 08:00:00.000000000 +0800 +++ qtwayland-opensource-src-5.15.10/debian/patches/0057-update-changelog-5.15.10-2ok27.patch 2025-01-22 16:08:30.000000000 +0800 @@ -0,0 +1,21 @@ +From: Jie Liu <liujie01@kylinos.cn> +Date: Fri, 13 Dec 2024 10:46:01 +0800 +Subject: update changelog: 5.15.10-2ok27 + +--- + src/3rdparty/protocol/qt_attribution.json | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/3rdparty/protocol/qt_attribution.json b/src/3rdparty/protocol/qt_attribution.json +index 54b31d3..569a1a7 100644 +--- a/src/3rdparty/protocol/qt_attribution.json ++++ b/src/3rdparty/protocol/qt_attribution.json +@@ -291,7 +291,7 @@ + "Name": "KDE Primary Output Protocol", + "QDocModule": "qtwaylandcompositor", + "QtUsage": "Used in the Qt Wayland platform plugin", +- "Files": "kde-primary-output-v1.xml.xml", ++ "Files": "kde-primary-output-v1.xml", + + "Description": "Protocol for telling which is the primary display among the selection of enabled outputs", + "Homepage": "https://invent.kde.org/libraries/plasma-wayland-protocols/", diff -Nru qtwayland-opensource-src-5.15.10/debian/patches/0058-update-wayland-cursor-pos-when-data-device-moving.patch qtwayland-opensource-src-5.15.10/debian/patches/0058-update-wayland-cursor-pos-when-data-device-moving.patch --- qtwayland-opensource-src-5.15.10/debian/patches/0058-update-wayland-cursor-pos-when-data-device-moving.patch 1970-01-01 08:00:00.000000000 +0800 +++ qtwayland-opensource-src-5.15.10/debian/patches/0058-update-wayland-cursor-pos-when-data-device-moving.patch 2025-01-22 16:08:30.000000000 +0800 @@ -0,0 +1,58 @@ +From: Jie Liu <liujie01@kylinos.cn> +Date: Thu, 2 Jan 2025 11:11:25 +0800 +Subject: update wayland cursor pos when data device moving + +--- + src/client/qwaylandcursor.cpp | 5 +++++ + src/client/qwaylandcursor_p.h | 1 + + src/client/qwaylanddatadevice.cpp | 2 ++ + 3 files changed, 8 insertions(+) + +diff --git a/src/client/qwaylandcursor.cpp b/src/client/qwaylandcursor.cpp +index e4eca9d..682d4ae 100644 +--- a/src/client/qwaylandcursor.cpp ++++ b/src/client/qwaylandcursor.cpp +@@ -286,6 +286,11 @@ void QWaylandCursor::setPos(const QPoint &pos) + qCWarning(lcQpaWayland) << "Setting cursor position is not possible on wayland"; + } + ++void QWaylandCursor::updateDragCursorPos(const QPoint &pos) ++{ ++ mLastPos = pos; ++} ++ + } // namespace QtWaylandClient + + QT_END_NAMESPACE +diff --git a/src/client/qwaylandcursor_p.h b/src/client/qwaylandcursor_p.h +index 751ffa6..a5e4231 100644 +--- a/src/client/qwaylandcursor_p.h ++++ b/src/client/qwaylandcursor_p.h +@@ -127,6 +127,7 @@ public: + void pointerEvent(const QMouseEvent &event) override; + QPoint pos() const override; + void setPos(const QPoint &pos) override; ++ void updateDragCursorPos(const QPoint &pos); + + static QSharedPointer<QWaylandBuffer> cursorBitmapBuffer(QWaylandDisplay *display, const QCursor *cursor); + +diff --git a/src/client/qwaylanddatadevice.cpp b/src/client/qwaylanddatadevice.cpp +index e3e60ed..7f85aeb 100644 +--- a/src/client/qwaylanddatadevice.cpp ++++ b/src/client/qwaylanddatadevice.cpp +@@ -48,6 +48,7 @@ + #include "qwaylanddisplay_p.h" + #include "qwaylandabstractdecoration_p.h" + #include "qwaylandsurface_p.h" ++#include "qwaylandcursor_p.h" + + #include <QtCore/QMimeData> + #include <QtGui/QGuiApplication> +@@ -250,6 +251,7 @@ void QWaylandDataDevice::data_device_motion(uint32_t time, wl_fixed_t x, wl_fixe + return; + + m_dragPoint = calculateDragPosition(x, y, m_dragWindow); ++ m_display->waylandCursor()->updateDragCursorPos(m_dragWindow->mapToGlobal(m_dragPoint)); + + QMimeData *dragData = nullptr; + Qt::DropActions supportedActions; diff -Nru qtwayland-opensource-src-5.15.10/debian/patches/0059-update-changlog-5.15.10-2ok28.patch qtwayland-opensource-src-5.15.10/debian/patches/0059-update-changlog-5.15.10-2ok28.patch --- qtwayland-opensource-src-5.15.10/debian/patches/0059-update-changlog-5.15.10-2ok28.patch 1970-01-01 08:00:00.000000000 +0800 +++ qtwayland-opensource-src-5.15.10/debian/patches/0059-update-changlog-5.15.10-2ok28.patch 2025-01-22 16:08:30.000000000 +0800 @@ -0,0 +1,21 @@ +From: Jie Liu <liujie01@kylinos.cn> +Date: Thu, 2 Jan 2025 17:22:07 +0800 +Subject: update changlog: 5.15.10-2ok28 + +--- + src/plugins/shellintegration/ukui-shell/ukuishellsurface.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/plugins/shellintegration/ukui-shell/ukuishellsurface.cpp b/src/plugins/shellintegration/ukui-shell/ukuishellsurface.cpp +index 594f37d..bd0dd23 100644 +--- a/src/plugins/shellintegration/ukui-shell/ukuishellsurface.cpp ++++ b/src/plugins/shellintegration/ukui-shell/ukuishellsurface.cpp +@@ -371,6 +371,8 @@ void UkuiShellSurface::setPopup(QWaylandWindow *parent) + positioner->set_anchor(QtWayland::xdg_positioner::anchor_top_left); + positioner->set_gravity(QtWayland::xdg_positioner::gravity_bottom_right); + positioner->set_size(m_window->geometry().width(), m_window->geometry().height()); ++ positioner->set_constraint_adjustment(QtWayland::xdg_positioner::constraint_adjustment_slide_x ++ | QtWayland::xdg_positioner::constraint_adjustment_slide_y); + m_popup = new Popup(this, parent, positioner); + positioner->destroy(); + diff -Nru qtwayland-opensource-src-5.15.10/debian/patches/0060-update-changelog-5.15.10-2ok29.patch qtwayland-opensource-src-5.15.10/debian/patches/0060-update-changelog-5.15.10-2ok29.patch --- qtwayland-opensource-src-5.15.10/debian/patches/0060-update-changelog-5.15.10-2ok29.patch 1970-01-01 08:00:00.000000000 +0800 +++ qtwayland-opensource-src-5.15.10/debian/patches/0060-update-changelog-5.15.10-2ok29.patch 2025-01-22 16:08:30.000000000 +0800 @@ -0,0 +1,22 @@ +From: Jie Liu <liujie01@kylinos.cn> +Date: Wed, 8 Jan 2025 18:25:09 +0800 +Subject: update changelog: 5.15.10-2ok29 + +--- + src/client/qwaylandwindow.cpp | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp +index bd83953..cb86158 100644 +--- a/src/client/qwaylandwindow.cpp ++++ b/src/client/qwaylandwindow.cpp +@@ -945,6 +945,9 @@ QWaylandWindow *QWaylandWindow::transientParent() const + if (QGuiApplication::focusWindow() && (window()->type() == Qt::ToolTip || window()->type() == Qt::Popup)) + return closestShellSurfaceWindow(QGuiApplication::focusWindow()); + ++ if (mDisplay->lastInputDevice() && mDisplay->lastInputDevice()->keyboardFocus()) ++ return closestShellSurfaceWindow(mDisplay->lastInputDevice()->keyboardFocus()->window()); ++ + return nullptr; + } + diff -Nru qtwayland-opensource-src-5.15.10/debian/patches/0061-update-changlog-5.15.10-2ok30.patch qtwayland-opensource-src-5.15.10/debian/patches/0061-update-changlog-5.15.10-2ok30.patch --- qtwayland-opensource-src-5.15.10/debian/patches/0061-update-changlog-5.15.10-2ok30.patch 1970-01-01 08:00:00.000000000 +0800 +++ qtwayland-opensource-src-5.15.10/debian/patches/0061-update-changlog-5.15.10-2ok30.patch 2025-01-22 16:08:30.000000000 +0800 @@ -0,0 +1,30 @@ +From: Jie Liu <liujie01@kylinos.cn> +Date: Wed, 22 Jan 2025 16:08:54 +0800 +Subject: update changlog: 5.15.10-2ok30 + +--- + src/client/qwaylandwindow.cpp | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp +index cb86158..ebe1e09 100644 +--- a/src/client/qwaylandwindow.cpp ++++ b/src/client/qwaylandwindow.cpp +@@ -942,11 +942,12 @@ QWaylandWindow *QWaylandWindow::transientParent() const + if (auto transientParent = closestShellSurfaceWindow(window()->transientParent())) + return transientParent; + +- if (QGuiApplication::focusWindow() && (window()->type() == Qt::ToolTip || window()->type() == Qt::Popup)) +- return closestShellSurfaceWindow(QGuiApplication::focusWindow()); +- +- if (mDisplay->lastInputDevice() && mDisplay->lastInputDevice()->keyboardFocus()) +- return closestShellSurfaceWindow(mDisplay->lastInputDevice()->keyboardFocus()->window()); ++ if (window()->type() == Qt::ToolTip || window()->type() == Qt::Popup) { ++ if (QGuiApplication::focusWindow()) ++ return closestShellSurfaceWindow(QGuiApplication::focusWindow()); ++ if (mDisplay->lastInputDevice() && mDisplay->lastInputDevice()->keyboardFocus()) ++ return closestShellSurfaceWindow(mDisplay->lastInputDevice()->keyboardFocus()->window()); ++ } + + return nullptr; + } diff -Nru qtwayland-opensource-src-5.15.10/debian/patches/series qtwayland-opensource-src-5.15.10/debian/patches/series --- qtwayland-opensource-src-5.15.10/debian/patches/series 2024-12-13 10:45:43.000000000 +0800 +++ qtwayland-opensource-src-5.15.10/debian/patches/series 2025-01-22 16:08:30.000000000 +0800 @@ -54,3 +54,8 @@ skip_animated_cursor_test.diff 0055-add-support-for-kde-primary-output-protocol.patch 0056-add-support-for-kde-primary-output-protocol.patch +0057-update-changelog-5.15.10-2ok27.patch +0058-update-wayland-cursor-pos-when-data-device-moving.patch +0059-update-changlog-5.15.10-2ok28.patch +0060-update-changelog-5.15.10-2ok29.patch +0061-update-changlog-5.15.10-2ok30.patch