mirror of
https://github.com/aclist/dztui.git
synced 2026-10-31 07:02:50 +01:00
fix: update active maps combo on tab change
This commit is contained in:
1 parent
4d0bb2f4f8
commit
c3e2f6e4b4
13 files changed
+200
-231
No files matched your search
@@ -20,27 +20,21 @@ class ContextMixin(TreeView):
|
||||
) -> None:
|
||||
# FIXME: double click causes issue
|
||||
# split into present by click and present by key
|
||||
|
||||
if self.is_selection_empty():
|
||||
return False
|
||||
|
||||
if event.type is Gdk.EventType.BUTTON_PRESS:
|
||||
if event.button != 3:
|
||||
return False
|
||||
try:
|
||||
pathinfo = self.get_path_at_pos(int(event.x), int(event.y))
|
||||
if pathinfo is None:
|
||||
return True
|
||||
(path, col, cellx, celly) = pathinfo
|
||||
if path is None:
|
||||
return True
|
||||
self.set_cursor(path, col, False)
|
||||
except AttributeError:
|
||||
pass
|
||||
|
||||
if event.type is Gdk.EventType.KEY_PRESS:
|
||||
if event.state is not Gdk.ModifierType.CONTROL_MASK:
|
||||
return False
|
||||
if event.keyval is not Gdk.KEY_l:
|
||||
match event.type:
|
||||
case Gdk.EventType.BUTTON_PRESS:
|
||||
if event.button != 3:
|
||||
return False
|
||||
self._process_button_event(event)
|
||||
case Gdk.EventType.KEY_PRESS:
|
||||
if event.state is not Gdk.ModifierType.CONTROL_MASK:
|
||||
return False
|
||||
if event.keyval is not Gdk.KEY_l:
|
||||
return False
|
||||
case _:
|
||||
return False
|
||||
|
||||
group = self.menu
|
||||
@@ -64,6 +58,18 @@ class ContextMixin(TreeView):
|
||||
|
||||
self.context_menu.select_first(False)
|
||||
|
||||
def _process_button_event(self, event: Gdk.EventButton) -> None:
|
||||
try:
|
||||
pathinfo = self.get_path_at_pos(int(event.x), int(event.y))
|
||||
if pathinfo is None:
|
||||
return True
|
||||
(path, col, cellx, celly) = pathinfo
|
||||
if path is None:
|
||||
return True
|
||||
self.set_cursor(path, col, False)
|
||||
except AttributeError:
|
||||
pass
|
||||
|
||||
def _on_menu_click(self, widget: Gtk.MenuItem, enum: ContextMenu) -> None:
|
||||
"""
|
||||
Local mods page allows multi selection, so ensure that only focused row
|
||||
|
||||
Reference in new issue
Block a user