Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package switchboard-plug-display for 
openSUSE:Factory checked in at 2025-08-25 20:38:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/switchboard-plug-display (Old)
 and      /work/SRC/openSUSE:Factory/.switchboard-plug-display.new.30751 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "switchboard-plug-display"

Mon Aug 25 20:38:54 2025 rev:3 rq:1301208 version:8.0.2

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/switchboard-plug-display/switchboard-plug-display.changes
        2025-03-11 20:47:19.699234418 +0100
+++ 
/work/SRC/openSUSE:Factory/.switchboard-plug-display.new.30751/switchboard-plug-display.changes
     2025-08-25 20:40:37.426439471 +0200
@@ -1,0 +2,9 @@
+Sat Aug 16 20:57:46 UTC 2025 - Richard Rahl <rra...@opensuse.org>
+
+- update to version 8.0.2:
+  * Styles: add scale.warmth
+  * Fix crash on enabling mirror display
+  * Fix Scale set by adding modes before set calling
+  * Fix crash and display arrangement when pluging new monitor
+
+-------------------------------------------------------------------

Old:
----
  switchboard-plug-display-8.0.1.tar.gz

New:
----
  switchboard-plug-display-8.0.2.tar.gz

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

Other differences:
------------------
++++++ switchboard-plug-display.spec ++++++
--- /var/tmp/diff_new_pack.XcJ6hq/_old  2025-08-25 20:40:38.494484215 +0200
+++ /var/tmp/diff_new_pack.XcJ6hq/_new  2025-08-25 20:40:38.498484383 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package switchboard-plug-display
 #
-# Copyright (c) 2025 SUSE LLC
+# Copyright (c) 2025 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 %define         appid io.elementary.settings.display
 Name:           switchboard-plug-display
-Version:        8.0.1
+Version:        8.0.2
 Release:        0
 Summary:        Switchboard Display Plug
 License:        GPL-3.0-or-later
@@ -40,7 +40,7 @@
 %lang_package
 
 %prep
-%autosetup
+%autosetup -n settings-display-%{version}
 
 %build
 %meson

++++++ switchboard-plug-display-8.0.1.tar.gz -> 
switchboard-plug-display-8.0.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/switchboard-plug-display-8.0.1/data/Display.css 
new/settings-display-8.0.2/data/Display.css
--- old/switchboard-plug-display-8.0.1/data/Display.css 2025-03-10 
21:49:28.000000000 +0100
+++ new/settings-display-8.0.2/data/Display.css 2025-05-27 16:17:33.000000000 
+0200
@@ -143,3 +143,29 @@
 display-widget.disabled button.flat.image-button:checked {
     background: alpha(@SLATE_700, 0.5);
 }
+
+scale.warmth trough {
+    background-image:
+        linear-gradient(
+            to right,
+            mix(
+                @SILVER_100,
+                @ORANGE_100,
+                0.5
+            ),
+            @ORANGE_500
+        );
+}
+
+scale.warmth:dir(rtl) trough {
+    background-image:
+        linear-gradient(
+            to left,
+            mix(
+                @SILVER_100,
+                @ORANGE_100,
+                0.5
+            ),
+            @ORANGE_500
+        );
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/switchboard-plug-display-8.0.1/data/display.metainfo.xml.in 
new/settings-display-8.0.2/data/display.metainfo.xml.in
--- old/switchboard-plug-display-8.0.1/data/display.metainfo.xml.in     
2025-03-10 21:49:28.000000000 +0100
+++ new/settings-display-8.0.2/data/display.metainfo.xml.in     2025-05-27 
16:17:33.000000000 +0200
@@ -30,6 +30,19 @@
   <update_contact>contact_at_elementary.io</update_contact>
 
   <releases>
+    <release version="8.0.2" date="2025-05-27" urgency="medium">
+      <description>
+        <p>Minor updates:</p>
+        <ul>
+          <li>Updated translations</li>
+        </ul>
+      </description>
+      <issues>
+        <issue 
url="https://github.com/elementary/switchboard-plug-display/issues/406";>Crash 
after pressing the Detect Display button</issue>
+        <issue 
url="https://github.com/elementary/switchboard-plug-display/issues/411";>Opening 
display settings results in segfault</issue>
+        <issue 
url="https://github.com/elementary/switchboard-plug-display/issues/419";>Display 
Settings crashes when hotplugging a new monitor in a single monitor 
layout</issue>
+      </issues>
+    </release>
     <release version="8.0.1" date="2025-03-10" urgency="medium">
       <description>
         <p>Minor updates:</p>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/switchboard-plug-display-8.0.1/meson.build 
new/settings-display-8.0.2/meson.build
--- old/switchboard-plug-display-8.0.1/meson.build      2025-03-10 
21:49:28.000000000 +0100
+++ new/settings-display-8.0.2/meson.build      2025-05-27 16:17:33.000000000 
+0200
@@ -1,7 +1,7 @@
 project(
     'display',
     'vala', 'c',
-    version: '8.0.1'
+    version: '8.0.2'
 )
 
 gettext_name = 'io.elementary.settings.' + meson.project_name()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/switchboard-plug-display-8.0.1/src/Objects/MonitorManager.vala 
new/settings-display-8.0.2/src/Objects/MonitorManager.vala
--- old/switchboard-plug-display-8.0.1/src/Objects/MonitorManager.vala  
2025-03-10 21:49:28.000000000 +0100
+++ new/settings-display-8.0.2/src/Objects/MonitorManager.vala  2025-05-27 
16:17:33.000000000 +0200
@@ -83,6 +83,10 @@
             critical (e.message);
         }
 
+        // Clear all monitors and virtual monitors before re-adding them if 
needed
+        monitors.clear ();
+        virtual_monitors.clear ();
+
         //TODO: make use of the "global-scale-required" property to 
differenciate between X and Wayland
         var supports_mirroring_variant = properties.lookup 
("supports-mirroring");
         if (supports_mirroring_variant != null) {
@@ -188,7 +192,6 @@
             var virtual_monitor = get_virtual_monitor_by_id (monitors_id);
             if (virtual_monitor == null) {
                 virtual_monitor = new VirtualMonitor ();
-                add_virtual_monitor (virtual_monitor);
             }
 
             foreach (var mutter_info in mutter_logical_monitor.monitors) {
@@ -214,6 +217,7 @@
             virtual_monitor.scale = mutter_logical_monitor.scale;
             virtual_monitor.transform = mutter_logical_monitor.transform;
             virtual_monitor.primary = mutter_logical_monitor.primary;
+            add_virtual_monitor (virtual_monitor);
         }
 
         // Look for any monitors that aren't part of a virtual monitor (hence 
disabled)
@@ -229,11 +233,11 @@
 
             if (!found) {
                 var virtual_monitor = new VirtualMonitor ();
-                add_virtual_monitor (virtual_monitor);
                 virtual_monitor.is_active = false;
                 virtual_monitor.primary = false;
-                virtual_monitor.scale = virtual_monitors[0].scale;
                 virtual_monitor.monitors.add (monitor);
+                virtual_monitor.scale = virtual_monitors[0].scale;
+                add_virtual_monitor (virtual_monitor);
             }
         }
     }
@@ -297,8 +301,8 @@
     public void enable_clone_mode () {
         var clone_virtual_monitor = new Display.VirtualMonitor ();
         clone_virtual_monitor.primary = true;
-        clone_virtual_monitor.scale = Utils.get_min_compatible_scale 
(monitors);
         clone_virtual_monitor.monitors.add_all (monitors);
+        clone_virtual_monitor.scale = Utils.get_min_compatible_scale 
(monitors);
         var modes = clone_virtual_monitor.get_available_modes ();
         /*
          * Two choices here:
@@ -364,6 +368,9 @@
             var single_virtual_monitor = new Display.VirtualMonitor ();
             var preferred_mode = monitor.preferred_mode;
             var current_mode = monitor.current_mode;
+
+            single_virtual_monitor.monitors.add (monitor);
+
             if (global_scale_required) {
                 single_virtual_monitor.scale = max_scale;
                 if (max_scale in preferred_mode.supported_scales) {
@@ -388,7 +395,6 @@
                 single_virtual_monitor.scale = preferred_mode.preferred_scale;
             }
 
-            single_virtual_monitor.monitors.add (monitor);
             new_virtual_monitors.add (single_virtual_monitor);
         }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/switchboard-plug-display-8.0.1/src/Objects/VirtualMonitor.vala 
new/settings-display-8.0.2/src/Objects/VirtualMonitor.vala
--- old/switchboard-plug-display-8.0.1/src/Objects/VirtualMonitor.vala  
2025-03-10 21:49:28.000000000 +0100
+++ new/settings-display-8.0.2/src/Objects/VirtualMonitor.vala  2025-05-27 
16:17:33.000000000 +0200
@@ -150,7 +150,7 @@
     private void update_available_scales () {
         Scale[] scales = {};
         foreach (var mode in get_available_modes ()) {
-            if (!mode.is_current) {
+            if (!mode.is_current && !mode.is_preferred) {
                 continue;
             }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/switchboard-plug-display-8.0.1/src/Widgets/DisplaysOverlay.vala 
new/settings-display-8.0.2/src/Widgets/DisplaysOverlay.vala
--- old/switchboard-plug-display-8.0.1/src/Widgets/DisplaysOverlay.vala 
2025-03-10 21:49:28.000000000 +0100
+++ new/settings-display-8.0.2/src/Widgets/DisplaysOverlay.vala 2025-05-27 
16:17:33.000000000 +0200
@@ -186,10 +186,12 @@
 
     public void rescan_displays () {
         scanning = true;
-        foreach (unowned var widget in display_widgets) {
-            display_widgets.remove (widget);
-            widget.destroy ();
-        }
+
+        display_widgets.@foreach ((display_widget) => {
+            overlay.remove_overlay (display_widget);
+            display_widget.destroy ();
+            display_widgets.remove (display_widget);
+        });
 
         active_displays = 0;
         foreach (var virtual_monitor in monitor_manager.virtual_monitors) {

Reply via email to