mirror of
https://github.com/rangermix/TwitchDropsMiner.git
synced 2026-06-05 11:59:37 +00:00
Make some notification noise when the application terminates without request
This commit is contained in:
9
gui.py
9
gui.py
@@ -519,7 +519,7 @@ class LoginForm:
|
||||
async def ask_login(self) -> LoginData:
|
||||
self.update(_("gui", "login", "required"), None)
|
||||
# ensure the window isn't hidden into tray when this runs
|
||||
self._manager.tray.restore()
|
||||
self._manager.grab_attention(sound=False)
|
||||
while True:
|
||||
self._manager.print(_("gui", "login", "request"))
|
||||
await self.wait_for_login_press()
|
||||
@@ -546,7 +546,7 @@ class LoginForm:
|
||||
async def ask_enter_code(self, user_code: str) -> None:
|
||||
self.update(_("gui", "login", "required"), None)
|
||||
# ensure the window isn't hidden into tray when this runs
|
||||
self._manager.tray.restore()
|
||||
self._manager.grab_attention(sound=False)
|
||||
self._manager.print(_("gui", "login", "request"))
|
||||
await self.wait_for_login_press()
|
||||
self._manager.print(f"Enter this code on the Twitch's device activation page: {user_code}")
|
||||
@@ -2108,6 +2108,11 @@ class GUIManager:
|
||||
def save(self, *, force: bool = False) -> None:
|
||||
self._cache.save(force=force)
|
||||
|
||||
def grab_attention(self, *, sound: bool = True):
|
||||
self.tray.restore()
|
||||
self._root.focus_force()
|
||||
self._root.bell()
|
||||
|
||||
def set_games(self, games: abc.Iterable[Game]) -> None:
|
||||
self.settings.set_games(games)
|
||||
|
||||
|
||||
3
main.py
3
main.py
@@ -172,8 +172,11 @@ if __name__ == "__main__":
|
||||
client.print(_("gui", "status", "exiting"))
|
||||
await client.shutdown()
|
||||
if not client.gui.close_requested:
|
||||
# user didn't request the closure
|
||||
client.print(_("status", "terminated"))
|
||||
client.gui.status.update(_("gui", "status", "terminated"))
|
||||
# notify the user about the closure
|
||||
client.gui.grab_attention(sound=True)
|
||||
await client.gui.wait_until_closed()
|
||||
# save the application state
|
||||
# NOTE: we have to do it after wait_until_closed,
|
||||
|
||||
Reference in New Issue
Block a user