Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package kwayland-server for openSUSE:Factory checked in at 2021-07-09 23:57:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kwayland-server (Old) and /work/SRC/openSUSE:Factory/.kwayland-server.new.2625 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kwayland-server" Fri Jul 9 23:57:08 2021 rev:22 rq:904510 version:5.22.3 Changes: -------- --- /work/SRC/openSUSE:Factory/kwayland-server/kwayland-server.changes 2021-06-27 18:58:56.496265000 +0200 +++ /work/SRC/openSUSE:Factory/.kwayland-server.new.2625/kwayland-server.changes 2021-07-09 23:57:30.921375545 +0200 @@ -1,0 +2,10 @@ +Tue Jul 6 12:01:48 UTC 2021 - Fabian Vogt <fab...@ritter-vogt.de> + +- Update to 5.22.3 + * New bugfix release + * For more details please see: + * https://kde.org/announcements/plasma/5/5.22.2 +- Changes since 5.22.2.1: + * Don't move keyboard focus on button press + +------------------------------------------------------------------- Old: ---- kwayland-server-5.22.2.1.tar.xz kwayland-server-5.22.2.1.tar.xz.sig New: ---- kwayland-server-5.22.3.tar.xz kwayland-server-5.22.3.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kwayland-server.spec ++++++ --- /var/tmp/diff_new_pack.ftiN1Z/_old 2021-07-09 23:57:31.809368640 +0200 +++ /var/tmp/diff_new_pack.ftiN1Z/_new 2021-07-09 23:57:31.809368640 +0200 @@ -17,22 +17,22 @@ # Full Plasma 5 version (e.g. 5.8.95) -%{!?_plasma5_bugfix: %define _plasma5_bugfix 5.22.2} +%{!?_plasma5_bugfix: %define _plasma5_bugfix %{version}} # Latest ABI-stable Plasma (e.g. 5.8 in KF5, but 5.8.95 in KUF) %{!?_plasma5_version: %define _plasma5_version %(echo %{_plasma5_bugfix} | awk -F. '{print $1"."$2}')} %define lname libKWaylandServer5 %bcond_without lang Name: kwayland-server -Version: 5.22.2.1 +Version: 5.22.3 Release: 0 Summary: KDE Wayland server library License: LGPL-2.1-or-later Group: Development/Libraries/KDE URL: https://www.kde.org -Source: https://download.kde.org/stable/plasma/5.22.2/kwayland-server-%{version}.tar.xz +Source: https://download.kde.org/stable/plasma/%{version}/kwayland-server-%{version}.tar.xz %if %{with lang} -Source1: https://download.kde.org/stable/plasma/5.22.2/kwayland-server-%{version}.tar.xz.sig +Source1: https://download.kde.org/stable/plasma/%{version}/kwayland-server-%{version}.tar.xz.sig Source2: plasma.keyring %endif BuildRequires: cmake >= 3.16 ++++++ kwayland-server-5.22.2.1.tar.xz -> kwayland-server-5.22.3.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwayland-server-5.22.2.1/CMakeLists.txt new/kwayland-server-5.22.3/CMakeLists.txt --- old/kwayland-server-5.22.2.1/CMakeLists.txt 2021-06-22 21:01:39.000000000 +0200 +++ new/kwayland-server-5.22.3/CMakeLists.txt 2021-07-06 12:20:46.000000000 +0200 @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.16) -set(PROJECT_VERSION "5.22.2") +set(PROJECT_VERSION "5.22.3") set(PROJECT_VERSION_MAJOR 5) set(QT_MIN_VERSION "5.15.0") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwayland-server-5.22.2.1/autotests/client/test_wayland_seat.cpp new/kwayland-server-5.22.3/autotests/client/test_wayland_seat.cpp --- old/kwayland-server-5.22.2.1/autotests/client/test_wayland_seat.cpp 2021-06-22 21:01:39.000000000 +0200 +++ new/kwayland-server-5.22.3/autotests/client/test_wayland_seat.cpp 2021-07-06 12:20:46.000000000 +0200 @@ -66,7 +66,6 @@ void testPointerPinchGesture_data(); void testPointerPinchGesture(); void testPointerAxis(); - void testKeyboardSubSurfaceTreeFromPointer(); void testCursor(); void testCursorDamage(); void testKeyboard(); @@ -1190,113 +1189,6 @@ QCOMPARE(axisStoppedSpy.count(), 1); } -void TestWaylandSeat::testKeyboardSubSurfaceTreeFromPointer() -{ - // this test verifies that when clicking on a sub-surface the keyboard focus passes to it - using namespace KWayland::Client; - using namespace KWaylandServer; - - // first create the pointer - QSignalSpy hasPointerChangedSpy(m_seat, &Seat::hasPointerChanged); - QVERIFY(hasPointerChangedSpy.isValid()); - m_seatInterface->setHasPointer(true); - QVERIFY(hasPointerChangedSpy.wait()); - QScopedPointer<Pointer> pointer(m_seat->createPointer()); - - // and create keyboard - QSignalSpy hasKeyboardChangedSpy(m_seat, &Seat::hasKeyboardChanged); - QVERIFY(hasKeyboardChangedSpy.isValid()); - m_seatInterface->setHasKeyboard(true); - QVERIFY(hasKeyboardChangedSpy.wait()); - QScopedPointer<Keyboard> keyboard(m_seat->createKeyboard()); - - // create a sub surface tree - // parent surface (100, 100) with one sub surface taking the half of it's size (50, 100) - // which has two further children (50, 50) which are overlapping - QSignalSpy surfaceCreatedSpy(m_compositorInterface, &CompositorInterface::surfaceCreated); - QVERIFY(surfaceCreatedSpy.isValid()); - QScopedPointer<Surface> parentSurface(m_compositor->createSurface()); - QScopedPointer<Surface> childSurface(m_compositor->createSurface()); - QScopedPointer<Surface> grandChild1Surface(m_compositor->createSurface()); - QScopedPointer<Surface> grandChild2Surface(m_compositor->createSurface()); - QScopedPointer<SubSurface> childSubSurface(m_subCompositor->createSubSurface(childSurface.data(), parentSurface.data())); - QScopedPointer<SubSurface> grandChild1SubSurface(m_subCompositor->createSubSurface(grandChild1Surface.data(), childSurface.data())); - QScopedPointer<SubSurface> grandChild2SubSurface(m_subCompositor->createSubSurface(grandChild2Surface.data(), childSurface.data())); - grandChild2SubSurface->setPosition(QPoint(0, 25)); - - // let's map the surfaces - auto render = [this] (Surface *s, const QSize &size) { - QImage image(size, QImage::Format_ARGB32_Premultiplied); - image.fill(Qt::black); - s->attachBuffer(m_shm->createBuffer(image)); - s->damage(QRect(QPoint(0, 0), size)); - s->commit(Surface::CommitFlag::None); - }; - render(grandChild2Surface.data(), QSize(50, 50)); - render(grandChild1Surface.data(), QSize(50, 50)); - render(childSurface.data(), QSize(50, 100)); - render(parentSurface.data(), QSize(100, 100)); - - QVERIFY(surfaceCreatedSpy.wait()); - auto serverSurface = surfaceCreatedSpy.first().first().value<SurfaceInterface*>(); - QVERIFY(serverSurface->isMapped()); - - // pass keyboard focus to the main surface - QSignalSpy enterSpy(keyboard.data(), &Keyboard::entered); - QVERIFY(enterSpy.isValid()); - QSignalSpy leftSpy(keyboard.data(), &Keyboard::left); - QVERIFY(leftSpy.isValid()); - m_seatInterface->setFocusedKeyboardSurface(serverSurface); - QVERIFY(enterSpy.wait()); - QCOMPARE(enterSpy.count(), 1); - QCOMPARE(leftSpy.count(), 0); - QCOMPARE(keyboard->enteredSurface(), parentSurface.data()); - - // now pass also pointer focus to the surface - QSignalSpy pointerEnterSpy(pointer.data(), &Pointer::entered); - QVERIFY(pointerEnterSpy.isValid()); - quint32 timestamp = 1; - m_seatInterface->setTimestamp(timestamp++); - m_seatInterface->notifyPointerMotion(QPointF(25, 50)); - m_seatInterface->setFocusedPointerSurface(serverSurface); - QVERIFY(pointerEnterSpy.wait()); - QCOMPARE(pointerEnterSpy.count(), 1); - // should not have affected the keyboard - QCOMPARE(enterSpy.count(), 1); - QCOMPARE(leftSpy.count(), 0); - - // let's click - m_seatInterface->setTimestamp(timestamp++); - m_seatInterface->notifyPointerButton(Qt::LeftButton, PointerButtonState::Pressed); - m_seatInterface->notifyPointerFrame(); - m_seatInterface->setTimestamp(timestamp++); - m_seatInterface->notifyPointerButton(Qt::LeftButton, PointerButtonState::Released); - m_seatInterface->notifyPointerFrame(); - QVERIFY(enterSpy.wait()); - QCOMPARE(enterSpy.count(), 2); - QCOMPARE(leftSpy.count(), 1); - QCOMPARE(keyboard->enteredSurface(), grandChild2Surface.data()); - - // click on same surface should not trigger another enter - m_seatInterface->setTimestamp(timestamp++); - m_seatInterface->notifyPointerButton(Qt::LeftButton, PointerButtonState::Pressed); - m_seatInterface->notifyPointerFrame(); - m_seatInterface->setTimestamp(timestamp++); - m_seatInterface->notifyPointerButton(Qt::LeftButton, PointerButtonState::Released); - m_seatInterface->notifyPointerFrame(); - QVERIFY(!enterSpy.wait(200)); - QCOMPARE(enterSpy.count(), 2); - QCOMPARE(leftSpy.count(), 1); - QCOMPARE(keyboard->enteredSurface(), grandChild2Surface.data()); - - // unfocus keyboard - m_seatInterface->setFocusedKeyboardSurface(nullptr); - m_seatInterface->notifyPointerFrame(); - QVERIFY(leftSpy.wait()); - QCOMPARE(enterSpy.count(), 2); - QCOMPARE(leftSpy.count(), 2); -} - void TestWaylandSeat::testCursor() { using namespace KWayland::Client; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwayland-server-5.22.2.1/src/server/seat_interface.cpp new/kwayland-server-5.22.3/src/server/seat_interface.cpp --- old/kwayland-server-5.22.2.1/src/server/seat_interface.cpp 2021-06-22 21:01:39.000000000 +0200 +++ new/kwayland-server-5.22.3/src/server/seat_interface.cpp 2021-07-06 12:20:46.000000000 +0200 @@ -760,13 +760,6 @@ } d->pointer->sendButton(button, state, serial); - - if (focusedPointerSurface() == focusedKeyboardSurface() && - state == PointerButtonState::Pressed) { - if (d->keyboard) { - d->keyboard->setFocusedSurface(d->pointer->focusedSurface(), serial); - } - } } void SeatInterface::notifyPointerFrame()