From 890dbd9d32b744c8eabee06a57a4a5c2b078dad3 Mon Sep 17 00:00:00 2001 From: Dylan Jeannin Date: Tue, 18 Aug 2026 13:40:02 +0200 Subject: [PATCH] Network: correct a crashing bug that happened when we tried to right click on the canvas of network after selecting a first point to create an edge --- src/View/Network/GraphWidget.py | 13 +++++++++++++ src/View/Network/Window.py | 6 +++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/View/Network/GraphWidget.py b/src/View/Network/GraphWidget.py index 114053a4..6d6daa4c 100644 --- a/src/View/Network/GraphWidget.py +++ b/src/View/Network/GraphWidget.py @@ -928,6 +928,11 @@ class GraphWidget(QGraphicsView): if self._only_display: return + if event.button() == Qt.RightButton \ + and self._block_right_click_in_add_state(): + event.accept() + return + locked = self.graph._status.is_read_only() pos = self.mapToScene(event.pos()) @@ -1062,7 +1067,15 @@ class GraphWidget(QGraphicsView): # Contextual menu + def _block_right_click_in_add_state(self): + return self._state == "add" \ + and self.selected_new_edge_src_node() is not None + def contextMenuEvent(self, event): + if self._block_right_click_in_add_state(): + event.accept() + return + if self._only_display or self.graph._status.is_read_only(): return diff --git a/src/View/Network/Window.py b/src/View/Network/Window.py index d58fba4b..4934c53d 100644 --- a/src/View/Network/Window.py +++ b/src/View/Network/Window.py @@ -180,7 +180,11 @@ class NetworkWindow(PamhyrWindow): key = event.key() if key == Qt.Key_Escape: - self._graph_widget.reset_selection + self._graph_widget.reset_selection() + event.accept() + return + + super(NetworkWindow, self).keyPressEvent(event) def add_node_reservoir(self, node): if self._reservoir.get_assoc_to_node(node) is None: