Philipp Hörist pushed to branch master at gajim / gajim
Commits:
94739a89 by lovetox at 2022-06-19T14:20:25+02:00
fix: Main: Process window shortcuts when no chat is open
- - - - -
f11514ad by lovetox at 2022-06-19T14:22:29+02:00
feat: Add new Shortcut for toggling the chat list
<Primary>R show/hides the chat list
- - - - -
4 changed files:
- gajim/data/gui/shortcuts_window.ui
- gajim/data/other/shortcuts.json
- gajim/gtk/chat_page.py
- gajim/gtk/main.py
Changes:
=====================================
gajim/data/gui/shortcuts_window.ui
=====================================
@@ -175,6 +175,13 @@
<object class="GtkShortcutsGroup">
<property name="visible">1</property>
<property name="title" translatable="yes">Tabs</property>
+ <child>
+ <object class="GtkShortcutsShortcut">
+ <property name="visible">1</property>
+ <property name="accelerator"><primary>R</property>
+ <property name="title" translatable="yes">Toggle Chat
List</property>
+ </object>
+ </child>
<child>
<object class="GtkShortcutsShortcut">
<property name="visible">1</property>
=====================================
gajim/data/other/shortcuts.json
=====================================
@@ -30,5 +30,6 @@
"win.switch-tab-7": ["<Alt>7", "<Alt>KP_7"],
"win.switch-tab-8": ["<Alt>8", "<Alt>KP_8"],
"win.switch-tab-9": ["<Alt>9", "<Alt>KP_9"],
- "win.search-history": ["<Primary>H"]
+ "win.search-history": ["<Primary>H"],
+ "win.hide-chat-list": ["<Primary>R"]
}
=====================================
gajim/gtk/chat_page.py
=====================================
@@ -313,3 +313,8 @@ def hide_search(self) -> bool:
self._search_revealer.set_reveal_child(False)
return True
return False
+
+ def toggle_chat_list(self) -> None:
+ chat_list = self._ui.paned.get_child1()
+ assert chat_list is not None
+ chat_list.set_visible(not chat_list.get_visible())
=====================================
gajim/gtk/main.py
=====================================
@@ -343,6 +343,7 @@ def _add_actions2(self) -> None:
'switch-tab-7',
'switch-tab-8',
'switch-tab-9',
+ 'toggle-chat-list',
]
disabled_for_emacs = (
@@ -363,31 +364,31 @@ def _on_action(self,
action: Gio.SimpleAction,
_param: Optional[GLib.Variant]) -> Optional[int]:
- control = self.get_active_control()
- if control is None:
+ action_name = action.get_name()
+ log.info('Activate action: %s', action_name)
+
+ if action_name == 'escape' and self._chat_page.hide_search():
return None
- log.info('Activate action: %s, active control: %s',
- action.get_name(), control.contact.jid)
- action_name = action.get_name()
+ control = self.get_active_control()
+ if control is not None:
- res = control.delegate_action(action_name)
- if res != Gdk.EVENT_PROPAGATE:
- return res
+ res = control.delegate_action(action_name)
+ if res != Gdk.EVENT_PROPAGATE:
+ return res
- if action_name == 'escape':
- if self._chat_page.hide_search():
- return None
+ if action_name == 'escape':
+ if app.settings.get('escape_key_closes'):
+ self._chat_page.remove_chat(control.account,
+ control.contact.jid)
+ return None
- if app.settings.get('escape_key_closes'):
+ elif action_name == 'close-tab':
self._chat_page.remove_chat(control.account,
control.contact.jid)
return None
- elif action_name == 'close-tab':
- self._chat_page.remove_chat(control.account, control.contact.jid)
-
- elif action_name == 'switch-next-tab':
+ if action_name == 'switch-next-tab':
self.select_next_chat(Direction.NEXT)
elif action_name == 'switch-prev-tab':
@@ -403,6 +404,9 @@ def _on_action(self,
number = int(action_name[-1]) - 1
self.select_chat_number(number)
+ elif action_name == 'toggle-chat-list':
+ self._chat_page.toggle_chat_list()
+
return None
def _on_window_motion_notify(self,
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/compare/3599cbc014b00ced6d8615a8b61825f49aeb1536...f11514ad4f87ba401a18d85b5707efc9f6cd6aa3
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/compare/3599cbc014b00ced6d8615a8b61825f49aeb1536...f11514ad4f87ba401a18d85b5707efc9f6cd6aa3
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