summaryrefslogtreecommitdiff
path: root/kde-plasma/libkscreen/files/libkscreen-5.6.5-config-fix.patch
blob: 3455f6352ab937baccda53ccbddd3d14adbde581 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
commit 3cd70aa1cef0b4aab8c13bba049e5b1ccd6ae1ab
Author: Kai Uwe Broulik <kde@privat.broulik.de>
Date:   Thu Jun 2 10:39:02 2016 +0200

    [Backend Manager] emitBackendReady() only after fetching the config finishes
    
    Without a valid config in the BackendManager, KScreen::Config::canBeApplied always
    returns false sometimes causing KScreen to ignore stored config on startup.
    Wait until we have a config before telling that the backend is ready.
    
    REVIEW: 128074

diff --git a/src/backendmanager.cpp b/src/backendmanager.cpp
index 570f575..676bb5d 100644
--- a/src/backendmanager.cpp
+++ b/src/backendmanager.cpp
@@ -353,14 +353,13 @@ void BackendManager::onBackendRequestDone(QDBusPendingCallWatcher *watcher)
     connect(new GetConfigOperation(GetConfigOperation::NoEDID), &GetConfigOperation::finished,
             [&](ConfigOperation *op) {
                 mConfig = qobject_cast<GetConfigOperation*>(op)->config();
+                emitBackendReady();
             });
     // And listen for its change.
     connect(mInterface, &org::kde::kscreen::Backend::configChanged,
             [&](const QVariantMap &newConfig) {
                 mConfig = KScreen::ConfigSerializer::deserializeConfig(newConfig);
             });
-
-    emitBackendReady();
 }
 
 void BackendManager::backendServiceUnregistered(const QString &serviceName)