Skip to content

Commit

Permalink
Handle power save mode
Browse files Browse the repository at this point in the history
Signed-off-by: Loren Eteval <[email protected]>
  • Loading branch information
LorenEteval committed May 28, 2024
1 parent 3f5dbe2 commit b62c39e
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 7 deletions.
10 changes: 8 additions & 2 deletions Furious/QtFramework/CoreProcess.py
Original file line number Diff line number Diff line change
Expand Up @@ -122,8 +122,14 @@ def start(self, **kwargs) -> bool:
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:
Expand Down
13 changes: 8 additions & 5 deletions Furious/QtFramework/NetworkStateManager.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,16 +105,19 @@ def abort(_networkReply):
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()

0 comments on commit b62c39e

Please sign in to comment.