From 3e8a55b727343e6ec983ff5845bf1fd129ec8ecf Mon Sep 17 00:00:00 2001 From: Eugenio Parodi Date: Thu, 19 Oct 2023 14:42:51 +0100 Subject: [PATCH] Do not push to clipboard if the Terminal selection is empty --- TermTk/TTkWidgets/TTkTerminal/terminal_screen.py | 2 ++ TermTk/TTkWidgets/TTkTerminal/terminalview.py | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/TermTk/TTkWidgets/TTkTerminal/terminal_screen.py b/TermTk/TTkWidgets/TTkTerminal/terminal_screen.py index f5aa3560..db956a38 100644 --- a/TermTk/TTkWidgets/TTkTerminal/terminal_screen.py +++ b/TermTk/TTkWidgets/TTkTerminal/terminal_screen.py @@ -252,6 +252,8 @@ class _TTkTerminalScreen(_TTkTerminalScreen_CSI, _TTkTerminalScreen_C1): self._selectCursor.select(x,y,moveAnchor) def getSelected(self): + if not self._selectCursor.hasSelection(): + return "" ret = [] st = self._selectCursor.selectionStart() diff --git a/TermTk/TTkWidgets/TTkTerminal/terminalview.py b/TermTk/TTkWidgets/TTkTerminal/terminalview.py index 036888f8..c07b1a28 100644 --- a/TermTk/TTkWidgets/TTkTerminal/terminalview.py +++ b/TermTk/TTkWidgets/TTkTerminal/terminalview.py @@ -988,8 +988,8 @@ class TTkTerminalView(TTkAbstractScrollView, _TTkTerminal_CSI_DEC): def mouseReleaseEvent(self, evt): self._selecting = False - selected = self._screen_current.getSelected() - self._clipboard.setText(selected) + if (selected := self._screen_current.getSelected()): + self._clipboard.setText(selected) return self._sendMouse(evt) def wheelEvent(self, evt):