From 334b0660c21e7919678a66458df47342653be51d Mon Sep 17 00:00:00 2001 From: ccMSC Date: Thu, 31 Dec 2015 02:20:53 -0700 Subject: [PATCH] (ckb) Fixed auto-save not happening --- VERSION | 2 +- src/ckb/kb.cpp | 2 +- src/ckb/kb.h | 6 ++++-- src/ckb/kbmanager.cpp | 1 + 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/VERSION b/VERSION index 5cfc088cf7..4016513d76 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -beta-v0.2.2+t05 +beta-v0.2.2+t06 diff --git a/src/ckb/kb.cpp b/src/ckb/kb.cpp index dcc9c993d1..13e8c22c1f 100644 --- a/src/ckb/kb.cpp +++ b/src/ckb/kb.cpp @@ -266,7 +266,7 @@ void Kb::save(){ void Kb::autoSave(){ quint64 now = QDateTime::currentMSecsSinceEpoch(); - if(now >= lastAutoSave + 15 * 1000 && !CkbSettings::isBusy()){ + if(needsSave() && now >= lastAutoSave + 15 * 1000 && !CkbSettings::isBusy()){ save(); lastAutoSave = now; } diff --git a/src/ckb/kb.h b/src/ckb/kb.h index 96fb656c8f..17acf1444d 100644 --- a/src/ckb/kb.h +++ b/src/ckb/kb.h @@ -80,8 +80,6 @@ class Kb : public QThread void load(); void save(); bool needsSave() const; - // Auto-save every 15s (if settings have changed, and no other writes are in progress) - void autoSave(); void hwSave(); @@ -104,8 +102,12 @@ class Kb : public QThread void fwUpdateFinished(bool succeeded); public slots: + // Send lighting and settings to the driver void frameUpdate(); + // Auto-save every 15s (if settings have changed, and no other writes are in progress) + void autoSave(); + private slots: // Processes lines read from the notification node void readNotify(QString line); diff --git a/src/ckb/kbmanager.cpp b/src/ckb/kbmanager.cpp index 26c5192997..a969327904 100644 --- a/src/ckb/kbmanager.cpp +++ b/src/ckb/kbmanager.cpp @@ -141,6 +141,7 @@ void KbManager::scanKeyboards(){ emit kbConnected(kb); kb->load(); connect(_eventTimer, SIGNAL(timeout()), kb, SLOT(frameUpdate())); + connect(_scanTimer, SIGNAL(timeout()), kb, SLOT(autoSave())); } }