diff --git a/Furious/QtFramework/CoreProcess.py b/Furious/QtFramework/CoreProcess.py index bbcebe4..0911c25 100644 --- a/Furious/QtFramework/CoreProcess.py +++ b/Furious/QtFramework/CoreProcess.py @@ -122,8 +122,14 @@ class CoreProcess(CoreFactory, ABC): PySide6LegacyEventLoopWait(waitTime) if self.checkIsRunning(): - # Start core daemon - self._daemonTimer.start(CORE_CHECK_ALIVE_INTERVAL) + if AppSettings.isStateON_('PowerSaveMode'): + # Power optimization + logger.info(f'no core daemon for {self.name()} in power save mode') + + self._daemonTimer.stop() + else: + # Start core daemon + self._daemonTimer.start(CORE_CHECK_ALIVE_INTERVAL) return True else: diff --git a/Furious/QtFramework/NetworkStateManager.py b/Furious/QtFramework/NetworkStateManager.py index c184198..04c2f78 100644 --- a/Furious/QtFramework/NetworkStateManager.py +++ b/Furious/QtFramework/NetworkStateManager.py @@ -105,16 +105,19 @@ class NetworkStateManager(SupportConnectedCallback, AppQNetworkAccessManager): self.jobTimeoutTimer.timeout.connect(functools.partial(abort, networkReply)) self.jobTimeoutTimer.start(NetworkStateManager.MIN_JOB_INTERVAL - 500) - def startTest(self): - self.jobArrangeTimer.start(NetworkStateManager.MIN_JOB_INTERVAL) - def stopTest(self): self.jobArrangeTimer.stop() def connectedCallback(self): - self.jobInterval = NetworkStateManager.MIN_JOB_INTERVAL + if AppSettings.isStateON_('PowerSaveMode'): + # Power optimization + logger.info('no job for network state manager in power save mode') - self.jobArrangeTimer.start(self.jobInterval) + self.jobArrangeTimer.stop() + else: + self.jobInterval = NetworkStateManager.MIN_JOB_INTERVAL + + self.jobArrangeTimer.start(self.jobInterval) def disconnectedCallback(self): self.jobArrangeTimer.stop()