M module-services/service-desktop/ServiceDesktop.cpp => module-services/service-desktop/ServiceDesktop.cpp +13 -9
@@ 224,12 224,7 @@ sys::ReturnCodes ServiceDesktop::InitHandler()
return btMsgHandler->handle(msgl);
});
connect(sevm::BatteryStatusChangeMessage(), [&](sys::Message *) {
- if (Store::Battery::get().state == Store::Battery::State::Discharging) {
- usbWorkerDeinit();
- }
- else {
- usbWorkerInit();
- }
+ checkChargingCondition();
return sys::MessageNone{};
});
@@ 255,9 250,8 @@ sys::ReturnCodes ServiceDesktop::InitHandler()
return sys::MessageNone{};
});
- if (auto resUsb = usbWorkerInit(); resUsb != sys::ReturnCodes::Success) {
- return resUsb;
- }
+ // initial check
+ checkChargingCondition();
return (sys::ReturnCodes::Success);
}
@@ 372,3 366,13 @@ void ServiceDesktop::restartConnectionActiveTimer()
{
connectionActiveTimer.restart(sdesktop::connectionActiveTimerDelayMs);
}
+
+void ServiceDesktop::checkChargingCondition()
+{
+ if (Store::Battery::get().state == Store::Battery::State::Discharging) {
+ usbWorkerDeinit();
+ }
+ else {
+ usbWorkerInit();
+ }
+}
M module-services/service-desktop/include/service-desktop/ServiceDesktop.hpp => module-services/service-desktop/include/service-desktop/ServiceDesktop.hpp +1 -0
@@ 101,6 101,7 @@ class ServiceDesktop : public sys::Service
OutboxNotifications outboxNotifications;
sys::TimerHandle connectionActiveTimer;
void restartConnectionActiveTimer();
+ void checkChargingCondition();
static constexpr unsigned int DefaultLogFlushTimeoutInMs = 1000U;
bool initialized = false;