From 2d72f6eb4b220c8dfa3c64b2f6b82365791f0424 Mon Sep 17 00:00:00 2001 From: Kali Kaneko Date: Mon, 22 Jan 2018 20:37:30 +0100 Subject: [feat] implement --nowindow flag to display only systray for some usages, specially with autostart enabled, user might want to launch only the systray. this commit implements a simple ``--nowindow`` switch that just avoids showing the main window for now. in the future, we can have a different entrypoint that just launches bitmaskd and a minimal systray widget. I'm not documenting this feature properly since I think this is still missing some functionality: the ability to switch on and off the vpn, and the ability to pass the --autostart as a flag to the bitmask entrypoint. --- docs/changelog.rst | 3 ++- src/leap/bitmask/gui/app.py | 8 +++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/docs/changelog.rst b/docs/changelog.rst index c7bca741..aec261bc 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -11,8 +11,9 @@ Features - `#9074 `_: pin provider ca certs. - `#6914 `_: expose an API to retreive message status. - `#9188 `_: try other gateways if the main one fails. -- `#9125 `_: port to use qtwebengine for rendering UI. - `#9181 `_: hardcode tcp4 in the vpn connection parameters. +- `#9125 `_: port to use qtwebengine for rendering UI. +- `#9127 `_: pass --nowindow flag to launch only the systray. - Autostart VPN if it was running when closed the application. - Set a windows title, so that Bitmask windows can be programmatically manipulated. - Support anonymous vpn. diff --git a/src/leap/bitmask/gui/app.py b/src/leap/bitmask/gui/app.py index 2988b15c..4a62adf6 100644 --- a/src/leap/bitmask/gui/app.py +++ b/src/leap/bitmask/gui/app.py @@ -186,7 +186,7 @@ def _handle_kill(*args, **kw): closing = True -def launch_gui(): +def launch_gui(with_window=True): global qApp global bitmaskd global browser @@ -218,7 +218,8 @@ def launch_gui(): timer.timeout.connect(lambda: None) timer.start(500) - browser.show() + if with_window: + browser.show() sys.exit(qApp.exec_()) @@ -250,7 +251,8 @@ def start_app(): return bitmask_cli.main() reset_authtoken() - launch_gui() + with_window = '--nowindow' not in sys.argv + launch_gui(with_window) if __name__ == "__main__": -- cgit v1.2.3