crecord: completely redraw screen when coming back from editor
authorKyle Lippincott <spectral@google.com>
Wed, 13 Mar 2019 18:39:36 -0700
changeset 41991 3f467db023a2
parent 41990 22ed63869835
child 41992 fa3b0ca9d74f
crecord: completely redraw screen when coming back from editor Differential Revision: https://phab.mercurial-scm.org/D6129
mercurial/crecord.py
--- a/mercurial/crecord.py	Wed Mar 20 20:42:10 2019 +0300
+++ b/mercurial/crecord.py	Wed Mar 13 18:39:36 2019 -0700
@@ -554,6 +554,14 @@
     of the chosen chunks.
     """
     chunkselector = curseschunkselector(headerlist, ui, operation)
+
+    class dummystdscr(object):
+        def clear(self):
+            pass
+        def refresh(self):
+            pass
+
+    chunkselector.stdscr = dummystdscr()
     if testfn and os.path.exists(testfn):
         testf = open(testfn, 'rb')
         testcommands = [x.rstrip('\n') for x in testf.readlines()]
@@ -1606,6 +1614,9 @@
             except error.Abort as exc:
                 self.errorstr = str(exc)
                 return None
+            finally:
+                self.stdscr.clear()
+                self.stdscr.refresh()
 
             # remove comment lines
             patch = [line + '\n' for line in patch.splitlines()