From 9cb35e2c80ee88d4c6ae82638ee7d17a9203ac59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= Date: Mon, 22 Mar 2021 17:41:01 +0100 Subject: [PATCH] backends/kms: Always perform full changes on KMS resume Resume happens after we may have received various events that we've ignored, so at this point we need to just emit an hotplug event like if everything changed so that user settings may be re-applied. Part-of: --- src/backends/native/meta-kms.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/backends/native/meta-kms.c b/src/backends/native/meta-kms.c index a1d483760..0750278ae 100644 --- a/src/backends/native/meta-kms.c +++ b/src/backends/native/meta-kms.c @@ -649,12 +649,11 @@ meta_kms_update_states_sync (MetaKms *kms, } static void -handle_hotplug_event (MetaKms *kms, - GUdevDevice *udev_device) +handle_hotplug_event (MetaKms *kms, + GUdevDevice *udev_device, + MetaKmsUpdateChanges changes) { - MetaKmsUpdateChanges changes; - - changes = meta_kms_update_states_sync (kms, udev_device); + changes |= meta_kms_update_states_sync (kms, udev_device); if (changes != META_KMS_UPDATE_CHANGE_NONE) g_signal_emit (kms, signals[RESOURCES_CHANGED], 0, changes); @@ -663,7 +662,7 @@ handle_hotplug_event (MetaKms *kms, void meta_kms_resume (MetaKms *kms) { - handle_hotplug_event (kms, NULL); + handle_hotplug_event (kms, NULL, META_KMS_UPDATE_CHANGE_FULL); } static void @@ -671,7 +670,7 @@ on_udev_hotplug (MetaUdev *udev, GUdevDevice *udev_device, MetaKms *kms) { - handle_hotplug_event (kms, udev_device); + handle_hotplug_event (kms, udev_device, META_KMS_UPDATE_CHANGE_NONE); } static void @@ -679,7 +678,7 @@ on_udev_device_removed (MetaUdev *udev, GUdevDevice *device, MetaKms *kms) { - handle_hotplug_event (kms, NULL); + handle_hotplug_event (kms, NULL, META_KMS_UPDATE_CHANGE_NONE); } MetaBackend *