Hello community, here is the log from the commit of package kwayland for openSUSE:Factory checked in at 2020-01-14 21:03:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kwayland (Old) and /work/SRC/openSUSE:Factory/.kwayland.new.6675 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kwayland" Tue Jan 14 21:03:48 2020 rev:70 rq:763491 version:5.66.0 Changes: -------- --- /work/SRC/openSUSE:Factory/kwayland/kwayland.changes 2019-12-18 14:43:55.773818170 +0100 +++ /work/SRC/openSUSE:Factory/.kwayland.new.6675/kwayland.changes 2020-01-14 21:05:43.250719474 +0100 @@ -1,0 +2,12 @@ +Sun Jan 5 09:02:22 UTC 2020 - Christophe Giboudeaux <christo...@krop.fr> + +- Update to 5.66.0 + * New feature release + * For more details please see: + * https://www.kde.org/announcements/kde-frameworks-5.66.0.php +- Changes since 5.65.0: + * [plasmashell] Update docs for panelTakesFocus to make it generic + * [plasmashell] Add signal for panelTakesFocus changing + * Update the obsolete projects.kde.org URL + +------------------------------------------------------------------- Old: ---- kwayland-5.65.0.tar.xz kwayland-5.65.0.tar.xz.sig New: ---- kwayland-5.66.0.tar.xz kwayland-5.66.0.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kwayland.spec ++++++ --- /var/tmp/diff_new_pack.BybDGN/_old 2020-01-14 21:05:45.218720385 +0100 +++ /var/tmp/diff_new_pack.BybDGN/_new 2020-01-14 21:05:45.222720387 +0100 @@ -1,7 +1,7 @@ # # spec file for package kwayland # -# Copyright (c) 2019 SUSE LLC +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,7 +16,7 @@ # -%define _tar_path 5.65 +%define _tar_path 5.66 # Full KF5 version (e.g. 5.33.0) %{!?_kf5_version: %global _kf5_version %{version}} # Last major and minor KF5 version (e.g. 5.33) @@ -24,7 +24,7 @@ # Only needed for the package signature condition %bcond_without lang Name: kwayland -Version: 5.65.0 +Version: 5.66.0 Release: 0 Summary: KDE Wayland library License: LGPL-2.1-or-later ++++++ kwayland-5.65.0.tar.xz -> kwayland-5.66.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwayland-5.65.0/CMakeLists.txt new/kwayland-5.66.0/CMakeLists.txt --- old/kwayland-5.65.0/CMakeLists.txt 2019-12-07 22:10:49.000000000 +0100 +++ new/kwayland-5.66.0/CMakeLists.txt 2020-01-04 00:14:34.000000000 +0100 @@ -1,12 +1,12 @@ cmake_minimum_required(VERSION 3.5) -set(KF5_VERSION "5.65.0") # handled by release scripts +set(KF5_VERSION "5.66.0") # handled by release scripts project(KWayland VERSION ${KF5_VERSION}) # ECM setup include(FeatureSummary) -find_package(ECM 5.65.0 NO_MODULE) -set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://projects.kde.org/projects/kdesupport/extra-cmake-modules") +find_package(ECM 5.66.0 NO_MODULE) +set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://commits.kde.org/extra-cmake-modules") feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake/Modules) @@ -30,7 +30,7 @@ SOVERSION 5) # Dependencies -set(REQUIRED_QT_VERSION 5.11.0) +set(REQUIRED_QT_VERSION 5.12.0) find_package(Qt5 ${REQUIRED_QT_VERSION} CONFIG REQUIRED Concurrent Gui) find_package(Wayland 1.15 COMPONENTS Client Server) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwayland-5.65.0/autotests/client/test_plasmashell.cpp new/kwayland-5.66.0/autotests/client/test_plasmashell.cpp --- old/kwayland-5.65.0/autotests/client/test_plasmashell.cpp 2019-12-07 22:10:49.000000000 +0100 +++ new/kwayland-5.66.0/autotests/client/test_plasmashell.cpp 2020-01-04 00:14:34.000000000 +0100 @@ -438,6 +438,7 @@ { // this test verifies that whether a panel wants to take focus is passed through correctly QSignalSpy plasmaSurfaceCreatedSpy(m_plasmaShellInterface, &PlasmaShellInterface::surfaceCreated); + QVERIFY(plasmaSurfaceCreatedSpy.isValid()); QScopedPointer<Surface> s(m_compositor->createSurface()); QScopedPointer<PlasmaShellSurface> ps(m_plasmaShell->createSurface(s.data())); @@ -445,16 +446,22 @@ QVERIFY(plasmaSurfaceCreatedSpy.wait()); QCOMPARE(plasmaSurfaceCreatedSpy.count(), 1); auto sps = plasmaSurfaceCreatedSpy.first().first().value<PlasmaShellSurfaceInterface*>(); + QSignalSpy plasmaSurfaceTakesFocusSpy(sps, &PlasmaShellSurfaceInterface::panelTakesFocusChanged); + QVERIFY(sps); QCOMPARE(sps->role(), PlasmaShellSurfaceInterface::Role::Panel); QCOMPARE(sps->panelTakesFocus(), false); ps->setPanelTakesFocus(true); m_connection->flush(); - QTRY_COMPARE(sps->panelTakesFocus(), true); + QVERIFY(plasmaSurfaceTakesFocusSpy.wait()); + QCOMPARE(plasmaSurfaceTakesFocusSpy.count(), 1); + QCOMPARE(sps->panelTakesFocus(), true); ps->setPanelTakesFocus(false); m_connection->flush(); - QTRY_COMPARE(sps->panelTakesFocus(), false); + QVERIFY(plasmaSurfaceTakesFocusSpy.wait()); + QCOMPARE(plasmaSurfaceTakesFocusSpy.count(), 2); + QCOMPARE(sps->panelTakesFocus(), false); } void TestPlasmaShell::testDisconnect() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwayland-5.65.0/src/client/plasmashell.h new/kwayland-5.66.0/src/client/plasmashell.h --- old/kwayland-5.65.0/src/client/plasmashell.h 2019-12-07 22:10:49.000000000 +0100 +++ new/kwayland-5.66.0/src/client/plasmashell.h 2020-01-04 00:14:34.000000000 +0100 @@ -324,14 +324,15 @@ void requestShowAutoHidingPanel(); /** - * Set whether a PlasmaShellSurface with Role Panel should get focus or not. + * Set whether a PlasmaShellSurface should get focus or not. * - * By default a Panel does not take focus. With this request the compositor - * can be instructed to also pass focus to a panel + * By default some roles do not take focus. With this request the compositor + * can be instructed to also pass focus. * - * @param takesFocus Set to @c true if the Panel should gain focus. + * @param takesFocus Set to @c true if the surface should gain focus. * @since 5.28 **/ + //KF6 TODO rename to make it generic void setPanelTakesFocus(bool takesFocus); Q_SIGNALS: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwayland-5.65.0/src/client/protocols/plasma-shell.xml new/kwayland-5.66.0/src/client/protocols/plasma-shell.xml --- old/kwayland-5.65.0/src/client/protocols/plasma-shell.xml 2019-12-07 22:10:49.000000000 +0100 +++ new/kwayland-5.66.0/src/client/protocols/plasma-shell.xml 2020-01-04 00:14:34.000000000 +0100 @@ -365,11 +365,9 @@ <request name="set_panel_takes_focus" since="4"> <description summary="Whether a panel takes focus"> - By default a org_kde_plasma_surface with role panel does not take focus and cannot be + By default various org_kde_plasma_surface roles do not take focus and cannot be activated. With this request the compositor can be instructed to pass focus also to this org_kde_plasma_surface. - - For org_kde_plasma_surface with another role than panel the request does not have any effect. </description> <arg name="takes_focus" type="uint" summary="Boolean value that sets whether the panel takes focus"/> </request> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwayland-5.65.0/src/server/plasmashell_interface.cpp new/kwayland-5.66.0/src/server/plasmashell_interface.cpp --- old/kwayland-5.65.0/src/server/plasmashell_interface.cpp 2019-12-07 22:10:49.000000000 +0100 +++ new/kwayland-5.66.0/src/server/plasmashell_interface.cpp 2020-01-04 00:14:34.000000000 +0100 @@ -317,7 +317,11 @@ { auto s = cast<Private>(resource); Q_ASSERT(client == *s->client); + if (s->panelTakesFocus == takesFocus) { + return; + } s->panelTakesFocus = takesFocus; + emit s->q_func()->panelTakesFocusChanged(); } void PlasmaShellSurfaceInterface::Private::setPanelBehavior(org_kde_plasma_surface_panel_behavior behavior) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kwayland-5.65.0/src/server/plasmashell_interface.h new/kwayland-5.66.0/src/server/plasmashell_interface.h --- old/kwayland-5.65.0/src/server/plasmashell_interface.h 2019-12-07 22:10:49.000000000 +0100 +++ new/kwayland-5.66.0/src/server/plasmashell_interface.h 2020-01-04 00:14:34.000000000 +0100 @@ -168,13 +168,14 @@ void showAutoHidingPanel(); /** - * Whether a PlasmaShellSurfaceInterface with Role Panel wants to have focus. + * Whether a PlasmaShellSurfaceInterface wants to have focus. * - * By default a Panel does not get focus, but the PlasmaShellSurfaceInterface can + * By default some PlasmaShell roles do not get focus, but the PlasmaShellSurfaceInterface can * request that it wants to have focus. The compositor can use this information to - * pass focus to the panel. + * pass focus to the surface. * @since 5.28 **/ + //TODO KF6 rename to something generic bool panelTakesFocus() const; /** @@ -234,6 +235,13 @@ **/ void panelAutoHideShowRequested(); + /* + * Emitted when panelTakesFocus changes + * @see panelTakesFocus + * @since 5.66 + */ + void panelTakesFocusChanged(); + private: friend class PlasmaShellInterface; explicit PlasmaShellSurfaceInterface(PlasmaShellInterface *shell, SurfaceInterface *parent, wl_resource *parentResource);