Hello community,

here is the log from the commit of package libkscreen2 for openSUSE:Factory 
checked in at 2017-06-01 16:26:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libkscreen2 (Old)
 and      /work/SRC/openSUSE:Factory/.libkscreen2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libkscreen2"

Thu Jun  1 16:26:10 2017 rev:48 rq:498806 version:5.10.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/libkscreen2/libkscreen2.changes  2017-04-30 
21:13:41.443048321 +0200
+++ /work/SRC/openSUSE:Factory/.libkscreen2.new/libkscreen2.changes     
2017-06-01 16:26:11.638457556 +0200
@@ -1,0 +2,25 @@
+Fri May 26 14:10:31 CEST 2017 - [email protected]
+
+- Update to 5.10.0
+  * New feature release
+  * For more details please see:
+  * https://www.kde.org/announcements/plasma-5.10.0.php
+- Changes since 5.9.95:
+  * None
+
+-------------------------------------------------------------------
+Thu May 11 20:26:25 CEST 2017 - [email protected]
+
+- Update to 5.9.95
+  * New feature release
+  * For more details please see:
+  * https://www.kde.org/announcements/plasma-5.9.95.php
+- Changes since 5.9.5:
+  * Sync scale to/from KScreen configs
+  * Sync kscreen outputs to wayland
+  * Fix compile warning of treating boolean like an integer
+  * Fix Output::geometry() when dealing with a scaled monitor
+  * Sync wayland output scale to KScreen config
+  * Fix type argument for get property call
+
+-------------------------------------------------------------------

Old:
----
  libkscreen-5.9.5.tar.xz

New:
----
  libkscreen-5.10.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libkscreen2.spec ++++++
--- /var/tmp/diff_new_pack.TO3N5k/_old  2017-06-01 16:26:12.270368452 +0200
+++ /var/tmp/diff_new_pack.TO3N5k/_new  2017-06-01 16:26:12.274367889 +0200
@@ -18,11 +18,11 @@
 
 %define lname   libKF5Screen7
 Name:           libkscreen2
-Version:        5.9.5
+Version:        5.10.0
 Release:        0
-# Full Plasma 5 version (e.g. 5.9.4)
+# Full Plasma 5 version (e.g. 5.8.95)
 %{!?_plasma5_bugfix: %global _plasma5_bugfix %{version}}
-# Lasted ABI-stable Plasma (e.g. 5.8 in KF5, but 5.9.4 in KUF)
+# Lasted ABI-stable Plasma (e.g. 5.8 in KF5, but 5.8.95 in KUF)
 %{!?_plasma5_version: %global _plasma5_version %(echo %{_plasma5_bugfix} | awk 
-F. '{print $1"."$2}')}
 BuildRequires:  cmake >= 2.8.12
 BuildRequires:  extra-cmake-modules >= 5.14.0
@@ -40,7 +40,7 @@
 License:        GPL-2.0+
 Group:          System/GUI/KDE
 Url:            http://www.kde.org
-Source:         
http://download.kde.org/stable/plasma/%{version}/libkscreen-%{version}.tar.xz
+Source:         libkscreen-%{version}.tar.xz
 Source1:        baselibs.conf
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 

++++++ libkscreen-5.9.5.tar.xz -> libkscreen-5.10.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libkscreen-5.9.5/CMakeLists.txt 
new/libkscreen-5.10.0/CMakeLists.txt
--- old/libkscreen-5.9.5/CMakeLists.txt 2017-04-25 15:05:00.000000000 +0200
+++ new/libkscreen-5.10.0/CMakeLists.txt        2017-05-26 10:55:40.000000000 
+0200
@@ -1,7 +1,7 @@
 cmake_minimum_required(VERSION 2.8.12)
 
 project(libkscreen)
-set(PROJECT_VERSION "5.9.5")
+set(PROJECT_VERSION "5.10.0")
 
 find_package(ECM 5.14.0 REQUIRED NO_MODULE)
 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} 
${ECM_KDE_MODULE_DIR})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libkscreen-5.9.5/backends/kwayland/waylandconfig.cpp 
new/libkscreen-5.10.0/backends/kwayland/waylandconfig.cpp
--- old/libkscreen-5.9.5/backends/kwayland/waylandconfig.cpp    2017-04-25 
15:05:00.000000000 +0200
+++ new/libkscreen-5.10.0/backends/kwayland/waylandconfig.cpp   2017-05-26 
10:55:40.000000000 +0200
@@ -236,7 +236,7 @@
 
 void WaylandConfig::updateKScreenConfig(KScreen::ConfigPtr &config) const
 {
-    auto features = Config::Feature::Writable;
+    auto features = Config::Feature::Writable | 
Config::Feature::PerOutputScaling;
     config->setSupportedFeatures(features);
     config->setValid(m_connection->display());
     KScreen::ScreenPtr screen = config->screen();
@@ -297,6 +297,10 @@
             wlOutputConfiguration->setPosition(o_old->outputDevice(), 
output->pos());
         }
 
+        if (device->scale() != output->scale()) {
+            wlOutputConfiguration->setScale(o_old->outputDevice(), 
output->scale());
+        }
+
         // rotation
         auto r_current = o_old->toKScreenRotation(device->transform());
         auto r_new = output->rotation();
@@ -311,8 +315,6 @@
         if (w_newmodeid != w_currentmodeid) {
             wlOutputConfiguration->setMode(device, w_newmodeid);
         }
-
-        // FIXME: scale
     }
 
     // We now block changes in order to compress events while the compositor 
is doing its thing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libkscreen-5.9.5/backends/kwayland/waylandoutput.cpp 
new/libkscreen-5.10.0/backends/kwayland/waylandoutput.cpp
--- old/libkscreen-5.9.5/backends/kwayland/waylandoutput.cpp    2017-04-25 
15:05:00.000000000 +0200
+++ new/libkscreen-5.10.0/backends/kwayland/waylandoutput.cpp   2017-05-26 
10:55:40.000000000 +0200
@@ -163,6 +163,7 @@
     output->setCurrentModeId(currentModeId);
 
     output->setModes(modeList);
+    output->setScale(m_output->scale());
 }
 
 QString WaylandOutput::modeName(const KWayland::Client::OutputDevice::Mode &m) 
const
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libkscreen-5.9.5/backends/kwayland/waylandscreen.cpp 
new/libkscreen-5.10.0/backends/kwayland/waylandscreen.cpp
--- old/libkscreen-5.9.5/backends/kwayland/waylandscreen.cpp    2017-04-25 
15:05:00.000000000 +0200
+++ new/libkscreen-5.10.0/backends/kwayland/waylandscreen.cpp   2017-05-26 
10:55:40.000000000 +0200
@@ -49,7 +49,7 @@
     QRect r;
     Q_FOREACH (auto o, outputs) {
         if (o->enabled()) {
-            r |= QRect(o->outputDevice()->globalPosition(), 
o->outputDevice()->pixelSize());
+            r |= QRect(o->outputDevice()->globalPosition(), 
o->outputDevice()->pixelSize() / o->outputDevice()->scale());
         }
     }
     m_size = r.size();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libkscreen-5.9.5/src/configserializer.cpp 
new/libkscreen-5.10.0/src/configserializer.cpp
--- old/libkscreen-5.9.5/src/configserializer.cpp       2017-04-25 
15:05:00.000000000 +0200
+++ new/libkscreen-5.10.0/src/configserializer.cpp      2017-05-26 
10:55:40.000000000 +0200
@@ -78,6 +78,7 @@
     obj[QLatin1String("type")] = static_cast<int>(output->type());
     obj[QLatin1String("icon")] = output->icon();
     obj[QLatin1String("pos")] = serializePoint(output->pos());
+    obj[QLatin1String("scale")] = output->scale();
     obj[QLatin1String("size")] = serializeSize(output->size());
     obj[QLatin1String("rotation")] = static_cast<int>(output->rotation());
     obj[QLatin1String("currentModeId")] = output->currentModeId();
@@ -223,6 +224,8 @@
             output->setIcon(value.toString());
         } else if (key == QLatin1String("pos")) {
             output->setPos(deserializePoint(value.value<QDBusArgument>()));
+        } else if (key == QLatin1String("scale")) {
+            output->setScale(value.toDouble());
         } else if (key == QLatin1String("size")) {
             output->setSize(deserializeSize(value.value<QDBusArgument>()));
         } else if (key == QLatin1String("rotation")) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libkscreen-5.9.5/src/doctor/dpmsclient.h 
new/libkscreen-5.10.0/src/doctor/dpmsclient.h
--- old/libkscreen-5.9.5/src/doctor/dpmsclient.h        2017-04-25 
15:05:00.000000000 +0200
+++ new/libkscreen-5.10.0/src/doctor/dpmsclient.h       2017-05-26 
10:55:40.000000000 +0200
@@ -69,7 +69,7 @@
     bool m_setOn = false;
 
     bool m_supportedOututCount = 0;
-    bool m_modeChanges = 0;
+    int m_modeChanges = 0;
 };
 
 } // namespace
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libkscreen-5.9.5/src/output.cpp 
new/libkscreen-5.10.0/src/output.cpp
--- old/libkscreen-5.9.5/src/output.cpp 2017-04-25 15:05:00.000000000 +0200
+++ new/libkscreen-5.10.0/src/output.cpp        2017-05-26 10:55:40.000000000 
+0200
@@ -488,9 +488,13 @@
     // We can't use QRect(d->pos, d->size), because d->size does not reflect 
the
     // actual rotation() set by caller, it's only updated when we get update 
from
     // KScreen, but not when user changes mode or rotation manually
-    return isHorizontal()
-            ? QRect(d->pos, currentMode()->size())
-            : QRect(d->pos, currentMode()->size().transposed());
+
+    QSize size = currentMode()->size() / d->scale;
+    if (!isHorizontal()) {
+        size = size.transposed();
+    }
+
+    return QRect(d->pos, size);
 }
 
 void Output::apply(const OutputPtr& other)


Reply via email to