diff --git a/libsrc/hyperion/GrabberWrapper.cpp b/libsrc/hyperion/GrabberWrapper.cpp index 93641ac3..cfe1cc77 100644 --- a/libsrc/hyperion/GrabberWrapper.cpp +++ b/libsrc/hyperion/GrabberWrapper.cpp @@ -178,6 +178,9 @@ void GrabberWrapper::handleSettingsUpdate(settings::type type, const QJsonDocume { // extract settings const QJsonObject& obj = config.object(); + + // save current state + bool isEnabled = getSysGrabberState(); // set global grabber state setSysGrabberState(obj["enable"].toBool(false)); @@ -203,6 +206,12 @@ void GrabberWrapper::handleSettingsUpdate(settings::type type, const QJsonDocume _ggrabber->setFramerate(obj["fps"].toInt(DEFAULT_RATE_HZ)); // eval new update time updateTimer(_ggrabber->getUpdateInterval()); + + // start if current state is not true + if (!isEnabled) + { + start(); + } } else { diff --git a/libsrc/hyperion/SettingsManager.cpp b/libsrc/hyperion/SettingsManager.cpp index bf201796..4c6ba9ee 100644 --- a/libsrc/hyperion/SettingsManager.cpp +++ b/libsrc/hyperion/SettingsManager.cpp @@ -446,7 +446,7 @@ bool SettingsManager::handleConfigUpgrade(QJsonObject& config) //Rename element type -> device if (newFramegrabberConfig.contains("type")) { - newFramegrabberConfig["device"] = "auto"; //newFramegrabberConfig["type"].toString(); + newFramegrabberConfig["device"] = newFramegrabberConfig["type"].toString(); newFramegrabberConfig.remove("type"); migrated = true; } diff --git a/version b/version index 0c92ed7b..78ff8945 100644 --- a/version +++ b/version @@ -1 +1 @@ -2.0.0-alpha.9 +2.0.0-alpha.10