Let the timer stop the share if there were no downloads, or all downloads are done

This commit is contained in:
Miguel Jacq 2017-12-05 11:18:26 +11:00
parent 884d8389ed
commit eaa37206e5
No known key found for this signature in database
GPG key ID: EEA4341C6D97A0B6
2 changed files with 11 additions and 7 deletions

View file

@ -427,7 +427,7 @@ class OnionShareGui(QtWidgets.QMainWindow):
if not web.get_stay_open():
self.server_status.stop_server()
self.server_status.shutdown_timeout_reset()
self.status_bar.showMessage(strings._('closing_automatically',True))
self.status_bar.showMessage(strings._('closing_automatically', True))
else:
if self.server_status.status == self.server_status.STATUS_STOPPED:
self.downloads.cancel_download(event["data"]["id"])
@ -445,10 +445,12 @@ class OnionShareGui(QtWidgets.QMainWindow):
if self.app.shutdown_timer and self.server_status.timer_enabled:
if self.timeout > 0:
if not self.app.shutdown_timer.is_alive():
if web.done:
# If there were no attempts to download the share, or all downloads are done, we can stop
if web.download_count == 0 or web.done:
self.server_status.stop_server()
self.status_bar.showMessage(strings._('close_on_timeout',True))
self.status_bar.showMessage(strings._('close_on_timeout', True))
self.server_status.shutdown_timeout_reset()
# A download is probably still running - hold off on stopping the share
else:
self.status_bar.showMessage(strings._('timeout_download_still_running', True))