diff options
| author | eerielili <lionel@les-miquelots.net> | 2025-07-19 19:22:42 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-19 11:22:42 -0600 |
| commit | aab0a6889cb15681be6a87a5c9ad61bab274f5f2 (patch) | |
| tree | bedb98602d8d361bbb81aff44bcdb529b70068b8 /main/src/ui/conversation_view_controller.vala | |
| parent | 13c8bac29bdacd42191112d135fdf90fcde9b690 (diff) | |
Add keyboard shortcut to close conversation (#1434)
closes #876
Co-authored-by: fiaxh <git@lightrise.org>
Diffstat (limited to 'main/src/ui/conversation_view_controller.vala')
| -rw-r--r-- | main/src/ui/conversation_view_controller.vala | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/main/src/ui/conversation_view_controller.vala b/main/src/ui/conversation_view_controller.vala index 5b768271..21459669 100644 --- a/main/src/ui/conversation_view_controller.vala +++ b/main/src/ui/conversation_view_controller.vala @@ -23,6 +23,8 @@ public class ConversationViewController : Object { private StreamInteractor stream_interactor; private Conversation? conversation; + private const string[] KEY_COMBINATION_CLOSE_CONVERSATION = {"<Ctrl>W", null}; + public ConversationViewController(ConversationView view, ConversationTitlebar titlebar, StreamInteractor stream_interactor) { this.view = view; this.titlebar = titlebar; @@ -112,6 +114,13 @@ public class ConversationViewController : Object { return false; })); ((Gtk.Window)view.get_root()).add_shortcut(shortcut); + + SimpleAction close_conversation_action = new SimpleAction("close-current-conversation", null); + close_conversation_action.activate.connect(() => { + stream_interactor.get_module(ConversationManager.IDENTITY).close_conversation(conversation); + }); + app.add_action(close_conversation_action); + app.set_accels_for_action("app.close-current-conversation", KEY_COMBINATION_CLOSE_CONVERSATION); } public void select_conversation(Conversation? conversation, bool default_initialize_conversation) { |
