Skip to content

Commit f8a8c73

Browse files
Merge branch 'main' into fix-crash-on-opening-plug
2 parents 154f158 + 8aa4705 commit f8a8c73

File tree

2 files changed

+10
-6
lines changed

2 files changed

+10
-6
lines changed

src/Objects/MonitorManager.vala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,8 +297,8 @@ public class Display.MonitorManager : GLib.Object {
297297
public void enable_clone_mode () {
298298
var clone_virtual_monitor = new Display.VirtualMonitor ();
299299
clone_virtual_monitor.primary = true;
300-
clone_virtual_monitor.scale = Utils.get_min_compatible_scale (monitors);
301300
clone_virtual_monitor.monitors.add_all (monitors);
301+
clone_virtual_monitor.scale = Utils.get_min_compatible_scale (monitors);
302302
var modes = clone_virtual_monitor.get_available_modes ();
303303
/*
304304
* Two choices here:
@@ -364,6 +364,9 @@ public class Display.MonitorManager : GLib.Object {
364364
var single_virtual_monitor = new Display.VirtualMonitor ();
365365
var preferred_mode = monitor.preferred_mode;
366366
var current_mode = monitor.current_mode;
367+
368+
single_virtual_monitor.monitors.add (monitor);
369+
367370
if (global_scale_required) {
368371
single_virtual_monitor.scale = max_scale;
369372
if (max_scale in preferred_mode.supported_scales) {
@@ -388,7 +391,6 @@ public class Display.MonitorManager : GLib.Object {
388391
single_virtual_monitor.scale = preferred_mode.preferred_scale;
389392
}
390393

391-
single_virtual_monitor.monitors.add (monitor);
392394
new_virtual_monitors.add (single_virtual_monitor);
393395
}
394396

src/Widgets/DisplaysOverlay.vala

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -186,10 +186,12 @@ public class Display.DisplaysOverlay : Gtk.Box {
186186

187187
public void rescan_displays () {
188188
scanning = true;
189-
foreach (unowned var widget in display_widgets) {
190-
display_widgets.remove (widget);
191-
widget.destroy ();
192-
}
189+
190+
display_widgets.@foreach ((display_widget) => {
191+
overlay.remove_overlay (display_widget);
192+
display_widget.destroy ();
193+
display_widgets.remove (display_widget);
194+
});
193195

194196
active_displays = 0;
195197
foreach (var virtual_monitor in monitor_manager.virtual_monitors) {

0 commit comments

Comments
 (0)