Package: release.debian.org
Severity: normal
X-Debbugs-Cc: kscr...@packages.debian.org, Debian Qt/KDE Maintainers 
<debian-qt-...@lists.debian.org>
Control: affects -1 + src:kscreen
User: release.debian....@packages.debian.org
Usertags: unblock

Dear Release Team,

please unblock package kscreen.

[ Reason ]
It contains the following changes:
* New upstream release (6.3.6).
  - Kcm: round brightness value. Commit. (kde#505763)
  - Kcm: reload kwin config when tearing option is changed. (kde#504634,
  kde#496970)
* Drop backported patches now part of the upstream release.
* Refresh patches.
* Backport upstream commit:
  - Avoid scaling factor input box endlessly growing as you type. [12d9cc49]

[ Tests ]
Various resolution, scaling, orientation and refresh rate configuration
tests performed.

[ Risks ]
The change only contains the latest upstream point release and
packported commits. Further fixes can easily be backported or the
changes reverted if needed.

[ Checklist ]
  [x] all changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in testing


Thanks !


unblock kscreen/4:6.3.6-1
diff -Nru kscreen-6.3.5/CMakeLists.txt kscreen-6.3.6/CMakeLists.txt
--- kscreen-6.3.5/CMakeLists.txt        2025-05-06 19:57:12.000000000 +0200
+++ kscreen-6.3.6/CMakeLists.txt        2025-07-08 13:44:28.000000000 +0200
@@ -1,12 +1,12 @@
 cmake_minimum_required(VERSION 3.16)
 
 project(KScreen)
-set(PROJECT_VERSION "6.3.5")
+set(PROJECT_VERSION "6.3.6")
 set(KSCREEN_VERSION ${PROJECT_VERSION})
 
 add_definitions("-DKSCREEN_VERSION=\"${KSCREEN_VERSION}\"")
 
-set(PROJECT_DEP_VERSION "6.3.5")
+set(PROJECT_DEP_VERSION "6.3.6")
 set(QT_MIN_VERSION "6.7.0")
 set(KF6_MIN_VERSION "6.10.0")
 set(KDE_COMPILERSETTINGS_LEVEL "5.82")
diff -Nru kscreen-6.3.5/debian/changelog kscreen-6.3.6/debian/changelog
--- kscreen-6.3.5/debian/changelog      2025-05-19 00:58:40.000000000 +0200
+++ kscreen-6.3.6/debian/changelog      2025-07-15 15:50:57.000000000 +0200
@@ -1,3 +1,17 @@
+kscreen (4:6.3.6-1) unstable; urgency=medium
+
+  [ Aurélien COUDERC ]
+  * New upstream release (6.3.6).
+    - Kcm: round brightness value. Commit. (kde#505763)
+    - Kcm: reload kwin config when tearing option is changed. (kde#504634,
+    kde#496970)
+  * Drop backported patches now part of the upstream release.
+  * Refresh patches.
+  * Backport upstream commit:
+    - Avoid scaling factor input box endlessly growing as you type. [12d9cc49]
+
+ -- Aurélien COUDERC <couc...@debian.org>  Tue, 15 Jul 2025 15:50:57 +0200
+
 kscreen (4:6.3.5-1) unstable; urgency=medium
 
   [ Aurélien COUDERC ]
diff -Nru kscreen-6.3.5/debian/patches/relax-interplasma-versioned-deps.patch 
kscreen-6.3.6/debian/patches/relax-interplasma-versioned-deps.patch
--- kscreen-6.3.5/debian/patches/relax-interplasma-versioned-deps.patch 
2025-05-16 18:42:29.000000000 +0200
+++ kscreen-6.3.6/debian/patches/relax-interplasma-versioned-deps.patch 
2025-07-15 14:18:36.000000000 +0200
@@ -4,7 +4,7 @@
  
  add_definitions("-DKSCREEN_VERSION=\"${KSCREEN_VERSION}\"")
  
--set(PROJECT_DEP_VERSION "6.3.5")
+-set(PROJECT_DEP_VERSION "6.3.6")
 +set(PROJECT_DEP_VERSION "6.3.4")
  set(QT_MIN_VERSION "6.7.0")
  set(KF6_MIN_VERSION "6.10.0")
diff -Nru kscreen-6.3.5/debian/patches/series 
kscreen-6.3.6/debian/patches/series
--- kscreen-6.3.5/debian/patches/series 2025-05-19 00:58:40.000000000 +0200
+++ kscreen-6.3.6/debian/patches/series 2025-07-15 15:38:07.000000000 +0200
@@ -1,3 +1,3 @@
 relax-interplasma-versioned-deps.patch
 upstream_5c259a38_kcm-show-all-refresh-rates-with-fractional-parts-too.patch
-upstream_755b84e5_kcm-reload-kwin-config-when-tearing-option-is-changed.patch
+upstream_12d9cc49_KCM-limit-spinbox-length.patch
diff -Nru 
kscreen-6.3.5/debian/patches/upstream_12d9cc49_KCM-limit-spinbox-length.patch 
kscreen-6.3.6/debian/patches/upstream_12d9cc49_KCM-limit-spinbox-length.patch
--- 
kscreen-6.3.5/debian/patches/upstream_12d9cc49_KCM-limit-spinbox-length.patch   
    1970-01-01 01:00:00.000000000 +0100
+++ 
kscreen-6.3.6/debian/patches/upstream_12d9cc49_KCM-limit-spinbox-length.patch   
    2025-07-15 15:47:29.000000000 +0200
@@ -0,0 +1,92 @@
+From 12d9cc4974ad903f7bc2c26a1514ea9b9a86b358 Mon Sep 17 00:00:00 2001
+From: Nate Graham <n...@kde.org>
+Date: Mon, 23 Jun 2025 10:14:15 -0600
+Subject: [PATCH] KCM: limit spinbox length
+
+Otherwise they keep expanding as you keep typing, which is fairly silly.
+
+BUG: 505766
+FIXED-IN: 6.4.1
+
+
+(cherry picked from commit 0a37f15fb2817480d2dbe11ea420e39a3f94ecd2)
+
+Co-authored-by: Nate Graham <n...@kde.org>
+---
+ kcm/ui/OutputPanel.qml | 15 ++++++++++++++-
+ kcm/ui/Panel.qml       |  5 ++++-
+ 2 files changed, 18 insertions(+), 2 deletions(-)
+
+--- a/kcm/ui/OutputPanel.qml
++++ b/kcm/ui/OutputPanel.qml
+@@ -18,7 +18,7 @@ Kirigami.FormLayout {
+ 
+     property KSortFilterProxyModel enabledOutputs
+     property var element: model
+-
++    readonly property int spinboxWidth: Kirigami.Units.gridUnit * 4
+     readonly property bool hdrAvailable: (element.capabilities & 
KScreen.Output.Capability.HighDynamicRange) && (element.capabilities & 
KScreen.Output.Capability.WideColorGamut)
+ 
+     signal reorder()
+@@ -108,6 +108,9 @@ Kirigami.FormLayout {
+             readonly property real factor: 120.0
+             readonly property real realValue: value / factor
+ 
++            Layout.minimumWidth: root.spinboxWidth
++            Layout.maximumWidth: root.spinboxWidth
++
+             from: 0.5 * factor
+             to: 3.0 * factor
+             stepSize: factor * 0.05 // 5% steps
+@@ -177,6 +180,10 @@ Kirigami.FormLayout {
+ 
+         QQC2.SpinBox {
+             id: overscanSpinbox
++
++            Layout.minimumWidth: root.spinboxWidth
++            Layout.maximumWidth: root.spinboxWidth
++
+             from: 0
+             to: 100
+             value: element.overscan
+@@ -396,6 +403,9 @@ Kirigami.FormLayout {
+             readonly property real factor: 20.0
+             readonly property real realValue: value / factor
+ 
++            Layout.minimumWidth: root.spinboxWidth
++            Layout.maximumWidth: root.spinboxWidth
++
+             from: 0
+             to: 1.0 * factor
+             stepSize: 1
+@@ -470,6 +480,9 @@ Kirigami.FormLayout {
+             onMoved: element.brightness = value / 100.0
+         }
+         QQC2.SpinBox {
++            Layout.minimumWidth: root.spinboxWidth
++            Layout.maximumWidth: root.spinboxWidth
++
+             from: 0
+             to: 100
+             stepSize: 5
+--- a/kcm/ui/Panel.qml
++++ b/kcm/ui/Panel.qml
+@@ -17,6 +17,8 @@ ColumnLayout {
+     property KSortFilterProxyModel enabledOutputs
+     property int selectedOutput
+ 
++    readonly property int spinboxWidth: Kirigami.Units.gridUnit * 4
++
+     signal reorder()
+ 
+     Kirigami.FormLayout {
+@@ -97,7 +99,8 @@ ColumnLayout {
+             }
+             QQC2.SpinBox {
+                 id: spinbox
+-                Layout.minimumWidth: Kirigami.Units.gridUnit * 6
++                Layout.minimumWidth: root.spinboxWidth
++                Layout.maximumWidth: root.spinboxWidth
+ 
+                 // Because QQC2 SpinBox doesn't natively support decimal step
+                 // sizes: https://bugreports.qt.io/browse/QTBUG-67349
diff -Nru 
kscreen-6.3.5/debian/patches/upstream_755b84e5_kcm-reload-kwin-config-when-tearing-option-is-changed.patch
 
kscreen-6.3.6/debian/patches/upstream_755b84e5_kcm-reload-kwin-config-when-tearing-option-is-changed.patch
--- 
kscreen-6.3.5/debian/patches/upstream_755b84e5_kcm-reload-kwin-config-when-tearing-option-is-changed.patch
  2025-05-19 00:58:40.000000000 +0200
+++ 
kscreen-6.3.6/debian/patches/upstream_755b84e5_kcm-reload-kwin-config-when-tearing-option-is-changed.patch
  1970-01-01 01:00:00.000000000 +0100
@@ -1,63 +0,0 @@
-From 755b84e51b71c33e0099cc42d3df12c05b6beb03 Mon Sep 17 00:00:00 2001
-From: Xaver Hugl <xaver.h...@gmail.com>
-Date: Fri, 23 May 2025 16:55:04 +0200
-Subject: [PATCH] kcm: reload kwin config when tearing option is changed
-
-Ideally, we'd integrate it into the normal output configuration protocol, but 
for
-backporting that's not a usable approach
-
-BUG: 504634
-BUG: 496970
-
-
-(cherry picked from commit ca3a700f167232408666e68f648c8eb028cad7d5)
-
-Co-authored-by: Xaver Hugl <xaver.h...@kde.org>
----
- kcm/kcm.cpp | 10 ++++++++++
- kcm/kcm.h   |  1 +
- 2 files changed, 11 insertions(+)
-
-diff --git a/kcm/kcm.cpp b/kcm/kcm.cpp
-index cc9d1cf89..a0a0f4b68 100644
---- a/kcm/kcm.cpp
-+++ b/kcm/kcm.cpp
-@@ -226,6 +226,12 @@ void KCMKScreen::doSave()
-         // enough time to change configuration.
-         QTimer::singleShot(1000, this, updateInitialData);
-     }
-+
-+    if (m_needsKwinConfigReload) {
-+        m_needsKwinConfigReload = false;
-+        QDBusMessage message = QDBusMessage::createSignal("/KWin", 
"org.kde.KWin", "reloadConfig");
-+        QDBusConnection::sessionBus().send(message);
-+    }
- }
- 
- bool KCMKScreen::backendReady() const
-@@ -523,6 +529,10 @@ bool KCMKScreen::xwaylandClientsScaleSupported() const
- 
- void KCMKScreen::setAllowTearing(bool allow)
- {
-+    if (KWinCompositingSetting::self()->allowTearing() == allow) {
-+        return;
-+    }
-+    m_needsKwinConfigReload = true;
-     KWinCompositingSetting::self()->setAllowTearing(allow);
-     Q_EMIT changed();
- }
-diff --git a/kcm/kcm.h b/kcm/kcm.h
-index c0046bb17..a124ca51e 100644
---- a/kcm/kcm.h
-+++ b/kcm/kcm.h
-@@ -135,6 +135,7 @@ private:
-     bool m_settingsReverted = false;
-     bool m_stopUpdatesFromBackend = false;
-     bool m_configNeedsSave = false;
-+    bool m_needsKwinConfigReload = false;
- 
-     QSortFilterProxyModel *m_outputProxyModel;
- 
--- 
-GitLab
-
diff -Nru kscreen-6.3.5/kcm/kcm.cpp kscreen-6.3.6/kcm/kcm.cpp
--- kscreen-6.3.5/kcm/kcm.cpp   2025-05-06 19:57:12.000000000 +0200
+++ kscreen-6.3.6/kcm/kcm.cpp   2025-07-08 13:44:28.000000000 +0200
@@ -226,6 +226,12 @@
         // enough time to change configuration.
         QTimer::singleShot(1000, this, updateInitialData);
     }
+
+    if (m_needsKwinConfigReload) {
+        m_needsKwinConfigReload = false;
+        QDBusMessage message = QDBusMessage::createSignal("/KWin", 
"org.kde.KWin", "reloadConfig");
+        QDBusConnection::sessionBus().send(message);
+    }
 }
 
 bool KCMKScreen::backendReady() const
@@ -523,6 +529,10 @@
 
 void KCMKScreen::setAllowTearing(bool allow)
 {
+    if (KWinCompositingSetting::self()->allowTearing() == allow) {
+        return;
+    }
+    m_needsKwinConfigReload = true;
     KWinCompositingSetting::self()->setAllowTearing(allow);
     Q_EMIT changed();
 }
diff -Nru kscreen-6.3.5/kcm/kcm.h kscreen-6.3.6/kcm/kcm.h
--- kscreen-6.3.5/kcm/kcm.h     2025-05-06 19:57:12.000000000 +0200
+++ kscreen-6.3.6/kcm/kcm.h     2025-07-08 13:44:28.000000000 +0200
@@ -135,6 +135,7 @@
     bool m_settingsReverted = false;
     bool m_stopUpdatesFromBackend = false;
     bool m_configNeedsSave = false;
+    bool m_needsKwinConfigReload = false;
 
     QSortFilterProxyModel *m_outputProxyModel;
 
diff -Nru kscreen-6.3.5/kcm/kcm_kscreen.json kscreen-6.3.6/kcm/kcm_kscreen.json
--- kscreen-6.3.5/kcm/kcm_kscreen.json  2025-05-06 19:57:12.000000000 +0200
+++ kscreen-6.3.6/kcm/kcm_kscreen.json  2025-07-08 13:44:28.000000000 +0200
@@ -101,6 +101,7 @@
     "X-KDE-Keywords[bg]": "дисплей, монитор, екран, мащаб, мащабиране, 
разделителна способност, ориентация, завъртане, 
ротация,изход,изходи,опресняване,честота на опресняване,размер на работния 
плот,хардуер,устройства,устройство,дробни,dpi,графика,кадрова честота,кадрова 
честота,fps,херц,хц,подреждане на монитори,подреждане на екрана, съотношение на 
страните, вторичен екран, вторичен монитор, вторичен дисплей, vrr, променлива 
скорост на опресняване, hdr, висок динамичен обхват, свободна синхронизация, 
g-синхронизация,качество,hdmi,дисплей 
порт,displayport,dp,vga,dvi,type-c,thunderbolt дисплей,външен дисплей, външен 
монитор, външен 
екран,пиксели,16:9,21:9,4:3,720p,1080p,1440p,4k,5k,8k,12k,16k,решетка на 
дисплея,таблетен режим",
     "X-KDE-Keywords[ca@valencia]": 
"pantalla,monitor,pantalla,escala,escalat,resolució,orientació,gir,rotació, 
eixida,eixides,actualització,freqüència d'actualització,mida 
d'escriptori,maquinari,dispositius,dispositiu,fraccional,ppp,gràfics,freqüència 
dels fotogrames,fps,hertz,hz,configuració de monitors,configuració de 
pantalla,relació d'aspecte,pantalla secundària,monitor secundari,vrr,freqüència 
d'actualització variable,hdr,marge dinàmic 
elevat,freesync,g-sync,qualitat,hdmi,display 
port,displayport,dp,vga,dvi,type-c,pantalla thunderbolt,pantalla 
externa,monitor 
extern,píxels,16:9,21:9,4:3,720p,1080p,1440p,4k,5k,8k,12k,16k,quadrícula de 
pantalla,mode tauleta",
     "X-KDE-Keywords[ca]": 
"pantalla,monitor,pantalla,escala,escalat,resolució,orientació,gir,rotació, 
sortida,sortides,actualització,freqüència d'actualització,mida 
d'escriptori,maquinari,dispositius,dispositiu,fraccional,ppp,gràfics,freqüència 
dels fotogrames,fps,hertz,hz,configuració de monitors,configuració de 
pantalla,relació d'aspecte,pantalla secundària,monitor secundari,vrr,freqüència 
d'actualització variable,hdr,marge dinàmic 
elevat,freesync,g-sync,qualitat,hdmi,display 
port,displayport,dp,vga,dvi,type-c,pantalla thunderbolt,pantalla 
externa,monitor 
extern,píxels,16:9,21:9,4:3,720p,1080p,1440p,4k,5k,8k,12k,16k,quadrícula de 
pantalla,mode tauleta",
+    "X-KDE-Keywords[de]": 
"Bildschirm,Monitor,Anzeige,Maßstab,Skalierung,Auflösung,Orientierung,rotieren,Rotation,Ausgabe,Ausgaben,aktualisieren,Aktualisierungsrate,Bildwiederholrate,Arbeitsflächengröße,Hardware,Geräte,Gerät,fraktioniert,DPI,Grafik,Bildrate,Bildrate,FPS,Hertz,hz,Monitore
 anordnen,Bildschirme verwalten,Seitenverhältnis,zweiter Monitor, zweiter 
Bildschirm,VRR,variable 
Aktualisierungsrate,HDR,Hochkontrast,Freesync,G-Sync,Qualität,HDMI,DisplayPort,DP,VGA,DVI,Typ-C,Thunderbolt-Bildschirm,externer
 Bildschirm,externer Monitor,externe 
Anzeige,Pixel,16:9,21:9,4:3,720p,1080p,1440p,4k,5k,8k,12k,16k,Bildschirmgitter,Tablet-Modus",
     "X-KDE-Keywords[en_GB]": 
"display,monitor,screen,scale,scaling,resolution,orientation,rotate,rotation,output,outputs,refresh,refresh
 rate,desktop 
size,hardware,devices,device,fractional,dpi,graphics,framerate,frame 
rate,fps,hertz,hz,arrange monitors,screen arrangement,aspect ratio,secondary 
screen,secondary monitor,secondary display,vrr,variable refresh rate,hdr,high 
dynamic range,freesync,g-sync,quality,hdmi,display 
port,displayport,dp,vga,dvi,type-c,thunderbolt display,external 
display,external monitor,external 
screen,pixels,16:9,21:9,4:3,720p,1080p,1440p,4k,5k,8k,12k,16k,display 
grid,tablet mode",
     "X-KDE-Keywords[es]": 
"visor,monitor,pantalla,escala,escalado,resolución,orientación,rotar,rotación,salida,salidas,refresco,intervalo
 de refresco,frecuencia de refresco,tasa de refresco,tamaño del 
escritorio,hardware,dispositivos,dispositivo,fraccionario,dpi,gráficos,intervalo
 de fotogramas,tasa de fotogramas,frecuencia de 
fotogramas,fps,hercio,hz,organizar monitores,organización de la 
pantalla,relación de aspecto,aspecto,proporciones,pantalla secundaria,monitor 
secundario,visor secundario,vrr,tasa de refresco variable,frecuencia de 
refresco variable,hdr,rango dinámico alto,alto rango dinámico,sincronización 
libre,g-sync,calidad,hdmi,puerto de la pantalla,displayport,dp,vga,dvi,tipo 
C,pantalla thunderbolt,pantalla externa,monitor externo,visor 
externo,píxeles,píxel,16:9,21:9,4:3,720p,1080p,1440p,4k,5k,8k,12k,16k,cuadrícula
 de la pantalla,modo tableta",
     "X-KDE-Keywords[eu]": 
"bistaratzailea,monitorea,pantaila,eskala,eskalatzea,bereizmena,orientazioa,biratu,biraketa,irteera,irteerak,freskatu,freskatze-tasa,mahaigainaren
 
neurria,hardwarea,gailuak,gailua,frakzionarioa,dpi,grafikoak,fotograma-emaria,fps,hertz,hz,monitorean
 antolatu,pantailen antolamendua,itxura proportzioa,bigarren mailako 
pantaila,bigarren mailako monitorea,bigarren mailako 
bistaratzailea,vrr,freskatze tasa aldakorra,hdr,tarte dinamiko 
handia,freesync,g-sync,kalitatea,hdmi,display 
port,displayport,dp,vga,dvi,type-c,thunderbolt bistaratzailea,kanpoko 
bistaratzailea,kanpoko monitorea,kanpoko 
pantaila,pixelak,16:9,21:9,4:3,720p,1080p,1440p,4k,5k,8k,12k,16k,bistaratze 
sareta,tablet modua",
diff -Nru kscreen-6.3.5/kcm/ui/OutputPanel.qml 
kscreen-6.3.6/kcm/ui/OutputPanel.qml
--- kscreen-6.3.5/kcm/ui/OutputPanel.qml        2025-05-06 19:57:12.000000000 
+0200
+++ kscreen-6.3.6/kcm/ui/OutputPanel.qml        2025-07-08 13:44:28.000000000 
+0200
@@ -466,14 +466,14 @@
             to: 100
             stepSize: 5
             live: true
-            value: element.brightness * 100.0
+            value: Math.round(element.brightness * 100.0)
             onMoved: element.brightness = value / 100.0
         }
         QQC2.SpinBox {
             from: 0
             to: 100
             stepSize: 5
-            value: element.brightness * 100.0
+            value: Math.round(element.brightness * 100.0)
             onValueModified: element.brightness = value / 100.0
         }
     }
diff -Nru kscreen-6.3.5/po/uk/kscreen_common.po 
kscreen-6.3.6/po/uk/kscreen_common.po
--- kscreen-6.3.5/po/uk/kscreen_common.po       2025-05-06 19:57:12.000000000 
+0200
+++ kscreen-6.3.6/po/uk/kscreen_common.po       2025-07-08 13:44:28.000000000 
+0200
@@ -51,4 +51,4 @@
 #: utils.cpp:21
 #, kde-format
 msgid "Built-in Screen"
-msgstr "Будований екран"
+msgstr "Вбудований екран"

Reply via email to