From 672c8f9e9efbd12293d7a39e3203bddb13e0e512 Mon Sep 17 00:00:00 2001 From: aclist <92275929+aclist@users.noreply.github.com> Date: Fri, 27 Feb 2026 22:53:31 +0900 Subject: [PATCH] fix: pass correct number of records --- dzgui/api/servers.py | 2 +- dzgui/model/servers.py | 11 ++++++----- dzgui/views/components/connect_panel.py | 1 + dzgui/views/trees/tree_log.py | 21 ++++++++++++++------- 4 files changed, 22 insertions(+), 13 deletions(-) diff --git a/dzgui/api/servers.py b/dzgui/api/servers.py index 923ddfe..918aa01 100644 --- a/dzgui/api/servers.py +++ b/dzgui/api/servers.py @@ -473,7 +473,7 @@ def query_by_ip(addr: str) -> Optional[dict]: try: record = addr.split(":") # TODO: create a Record object - ip, qport = record[0], record[2] + ip, qport = record[0], record[1] res = query_direct(ip, int(qport)) except Exception as e: logger.critical(e) diff --git a/dzgui/model/servers.py b/dzgui/model/servers.py index e6eb3ec..1b4e69b 100644 --- a/dzgui/model/servers.py +++ b/dzgui/model/servers.py @@ -197,19 +197,19 @@ class ServerModelManager: @call_on_thread(dialog.querying) def add_by_ip(self, addr: str) -> None: res = Servers.query_by_ip(addr) - self.parse_single_record(res) + self._parse_single_record(res) - def parse_single_record(self, record: dict) -> None: - if res is None: + def _parse_single_record(self, response: dict) -> None: + if response is None: self.thread_man.set_cleanup_func(StoredFunc(self._cleanup_on_failure)) return - record = Servers.parse_json([res]) + record = Servers.parse_json([response]) proxy_man = self._get_proxy_man() raw_model = proxy_man.get_control() - fqip = Servers.response_to_fq_ip(res) + fqip = Servers.response_to_fq_ip(response) config_man = self.controller.get_config_man() config_man.add_saved_server(fqip) @@ -324,6 +324,7 @@ class ServerModelManager: manager.filter(FilterMode.INITIAL) self.to_insert = manager.get_proxy_model() + # TODO: abstract for all methods u_maps = set([row[1] for row in data]) self._set_new_maps(sorted(u_maps)) diff --git a/dzgui/views/components/connect_panel.py b/dzgui/views/components/connect_panel.py index 31cf3c6..2530c27 100644 --- a/dzgui/views/components/connect_panel.py +++ b/dzgui/views/components/connect_panel.py @@ -217,6 +217,7 @@ class AddPanel(Gtk.Frame): ServerModelManager(self.controller, tree).add_by_ip(addr) def _on_activate(self, entry: Gtk.Entry) -> None: + # NOTE: default action is to add a record, not connect if not self.add_server.is_sensitive(): return self._submit_query() diff --git a/dzgui/views/trees/tree_log.py b/dzgui/views/trees/tree_log.py index 026db11..29268a5 100644 --- a/dzgui/views/trees/tree_log.py +++ b/dzgui/views/trees/tree_log.py @@ -50,15 +50,22 @@ class LogTreeView(ContextMixin, TreeView): def _on_log_buttonpress(self, widget: Gtk.Widget, event: Gdk.EventButton) -> None: if event.button == Gdk.BUTTON_SECONDARY: - path, col, x, y = self.get_path_at_pos(int(event.x), int(event.y)) - if path: - selection = self.get_selection() - model, selected_paths = selection.get_selected_rows() - if path not in selected_paths: - selection.select_path(path) self.present_menu(widget, event) return True - return False + #selection = self.get_selection() + #model, selected_paths = selection.get_selected_rows() + #if len(selected_paths) > 1: + # for path in selected_paths: + # selection.select_path(path) + # path, col, x, y = self.get_path_at_pos(int(event.x), int(event.y)) + # if path: + # selection = self.get_selection() + # model, selected_paths = selection.get_selected_rows() + # if path not in selected_paths: + # selection.select_path(path) + # self.present_menu(widget, event) + # return True + #return False def _on_log_keypress(self, widget: Gtk.Widget, event: Gdk.EventKey) -> None: self.present_menu(widget, event)