about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSören Tempel <soeren+git@soeren-tempel.net>2021-05-22 11:44:17 +0200
committerSören Tempel <soeren+git@soeren-tempel.net>2021-05-22 11:44:17 +0200
commit7826b13628323daecf6918042a00bce68743dc6a (patch)
treee09a723aa775040ef940007380cd97e95356ab25
parent36ea4b0b19370182110cf3f76aab99e428ddb46d (diff)
termview: Split cursor_at_end method from backspace
-rw-r--r--saneterm/termview.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/saneterm/termview.py b/saneterm/termview.py
index 94cc098..0b8a16c 100644
--- a/saneterm/termview.py
+++ b/saneterm/termview.py
@@ -77,14 +77,15 @@ class TermView(Gtk.TextView):
         self._last_output_mark = self._textbuffer.create_mark(None, end, True)
         self._last_mark = self._last_mark
 
-    def do_backspace(self):
-        buf = self._textbuffer
+    def cursor_at_out(self):
+        cur = self._textbuffer.get_iter_at_offset(self._textbuffer.props.cursor_position)
+        out = self._textbuffer.get_iter_at_mark(self._last_output_mark)
 
-        cur = buf.get_iter_at_offset(buf.props.cursor_position)
-        out = buf.get_iter_at_mark(self._last_output_mark)
+        return cur.compare(out) == 0
 
+    def do_backspace(self):
         # If current position is output positon ignore backspace.
-        if cur.compare(out) != 0:
+        if not self.cursor_at_out():
             Gtk.TextView.do_backspace(self)
 
     def __end_user_action(self, buffer):