Daniel Brötzmann pushed to branch master at gajim / gajim
Commits:
59439c83 by wurstsalat at 2022-01-23T14:36:11+01:00
Add ConfirmationDialog for removing chat history
- - - - -
2 changed files:
- gajim/gtk/application.py
- gajim/gtk/menus.py
Changes:
=====================================
gajim/gtk/application.py
=====================================
@@ -74,6 +74,8 @@
from gajim.gui.about import AboutDialog
from gajim.gui.avatar import AvatarStorage
from gajim.gui.builder import get_builder
+from gajim.gui.dialogs import DialogButton
+from gajim.gui.dialogs import ConfirmationDialog
from gajim.gui.dialogs import ShortcutsWindow
from gajim.gui.discovery import ServiceDiscoveryWindow
from gajim.gui.util import get_app_window
@@ -803,15 +805,23 @@ def _on_open_chat_action(_action: Gio.SimpleAction,
def _on_remove_history_action(_action: Gio.SimpleAction,
params: structs.RemoveHistoryActionParams
) -> None:
-
- if params.jid is not None:
- app.storage.archive.remove_history(params.account, params.jid)
- control = app.window.get_control(params.account, params.jid)
- if control is not None:
- control.reset_view()
- else:
- for control in app.window.get_controls(params.account):
- control.reset_view()
+ def _remove() -> None:
+ if params.jid is not None:
+ app.storage.archive.remove_history(params.account, params.jid)
+ control = app.window.get_control(params.account, params.jid)
+ if control is not None:
+ control.reset_view()
+ else:
+ for control in app.window.get_controls(params.account):
+ control.reset_view()
+ ConfirmationDialog(
+ _('Remove Chat History'),
+ _('Remove Chat History?'),
+ _('Do you really want to remove your chat history for this chat?'),
+ [DialogButton.make('Cancel'),
+ DialogButton.make('Remove',
+ callback=_remove)],
+ transient_for=app.window).show()
@staticmethod
@structs.actionfunction
=====================================
gajim/gtk/menus.py
=====================================
@@ -77,7 +77,7 @@ def get_singlechat_menu(control_id: str,
('win.block-contact-', _('Block Contact…')),
('win.start-call-', _('Start Call…')),
('win.information-', _('Information')),
- ('app.remove-history', _('Remove History'))
+ ('app.remove-history', _('Remove History…'))
]
if not contact.is_in_roster:
@@ -157,7 +157,7 @@ def get_groupchat_menu(control_id: str, account: str, jid:
JID) -> Gio.Menu:
(_('Request Voice'), f'win.request-voice-{control_id}', None),
(_('Execute Command…'), f'win.execute-command-{control_id}', '""'),
(_('Search…'), 'win.search-history', None),
- (_('Remove History'), 'app.remove-history', params)
+ (_('Remove History…'), 'app.remove-history', params)
]
return make_menu(menulist)
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/59439c83b3b7e5136a3508328f037bceaa2a3c1c
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/59439c83b3b7e5136a3508328f037bceaa2a3c1c
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