Philipp Hörist pushed to branch master at gajim / gajim
Commits:
83906f55 by lovetox at 2022-06-17T19:50:35+02:00
feat: Preferences: Add `Action on Close Button` setting
The new popover setting allows for more than two values and is a
more flexibel approach.
- - - - -
f2702018 by lovetox at 2022-06-17T19:58:06+02:00
fix: Preferences: Remove `Minimize to Tray` setting
It’s better to leave this up to the window manager and don’t mess with it.
Users who don’t want to minimize to tray can either use the tray show/hide
button
or set the `Action on Close` setting accordingly.
- - - - -
3 changed files:
- gajim/common/setting_values.py
- gajim/gtk/main.py
- gajim/gtk/preferences.py
Changes:
=====================================
gajim/common/setting_values.py
=====================================
@@ -66,8 +66,6 @@ class _ACCOUNT_DEFAULT:
'ignore_incoming_attention',
'is_window_visible',
'log_contact_status_changes',
- 'minimize_on_window_delete',
- 'minimize_to_tray',
'muc_prefer_direct_msg',
'notification_preview_message',
'notify_on_all_muc_messages',
@@ -138,6 +136,7 @@ class _ACCOUNT_DEFAULT:
]
StringSettings = Literal[
+ 'action_on_close',
'audio_input_device',
'audio_output_device',
'autoaway_message',
@@ -234,8 +233,7 @@ class _ACCOUNT_DEFAULT:
'mainwin_width': 1000,
'mainwin_x_position': 0,
'mainwin_y_position': 0,
- 'minimize_on_window_delete': True,
- 'minimize_to_tray': False,
+ 'action_on_close': 'hide',
'muc_highlight_words': '',
'muc_prefer_direct_msg': True,
'muclumbus_api_http_uri': 'https://search.jabber.network/api/1.0/search',
=====================================
gajim/gtk/main.py
=====================================
@@ -422,11 +422,13 @@ def _on_window_delete(self,
_event: Gdk.Event
) -> int:
- if app.settings.get('minimize_on_window_delete'):
- if app.settings.get('minimize_to_tray'):
- self.hide()
- else:
- self.minimize()
+ action = app.settings.get('action_on_close')
+ if action == 'hide':
+ self.hide()
+ return Gdk.EVENT_STOP
+
+ if action == 'minimize':
+ self.minimize()
return Gdk.EVENT_STOP
if not app.settings.get('confirm_on_window_delete'):
=====================================
gajim/gtk/preferences.py
=====================================
@@ -191,6 +191,12 @@ def __init__(self, *args: Any) -> None:
'last_state': _('Restore last state'),
}
+ action_on_close_items = {
+ 'hide': _('Hide'),
+ 'minimize': _('Minimize'),
+ 'quit': _('Quit'),
+ }
+
settings = [
Setting(SettingKind.POPOVER,
_('Show on Startup'),
@@ -199,17 +205,12 @@ def __init__(self, *args: Any) -> None:
props={'entries': main_window_on_startup_items},
desc=_('Show window when starting Gajim')),
- Setting(SettingKind.SWITCH,
- _('Minimize on Close'),
- SettingType.CONFIG,
- 'minimize_on_window_delete',
- desc=_('Minimize when closing Gajim’s window')),
-
- Setting(SettingKind.SWITCH,
- _('Minimize to Tray'),
+ Setting(SettingKind.POPOVER,
+ _('Action on Close'),
SettingType.CONFIG,
- 'minimize_to_tray',
- desc=_('Hide window to system tray when minimized')),
+ 'action_on_close',
+ props={'entries': action_on_close_items},
+ desc=_('Action when closing Gajim’s window')),
Setting(SettingKind.SWITCH,
_('Show in Taskbar'),
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/compare/9fb23514a863ba399a02ba4b3608dbbe13fb8aa5...f27020188f42ad336cdd3cade7d811f9c4194c70
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/compare/9fb23514a863ba399a02ba4b3608dbbe13fb8aa5...f27020188f42ad336cdd3cade7d811f9c4194c70
You're receiving this email because of your account on dev.gajim.org.
_______________________________________________
Commits mailing list
[email protected]
https://lists.gajim.org/cgi-bin/listinfo/commits