summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--ranger/ext/vcs/vcs.py3
-rw-r--r--ranger/gui/ui.py8
2 files changed, 6 insertions, 5 deletions
diff --git a/ranger/ext/vcs/vcs.py b/ranger/ext/vcs/vcs.py
index dd74ff82..8516bd71 100644
--- a/ranger/ext/vcs/vcs.py
+++ b/ranger/ext/vcs/vcs.py
@@ -393,7 +393,8 @@ class VcsThread(threading.Thread):
             if redraw:
                 redraw = False
                 for column in self.ui.browser.columns:
-                    column.need_redraw = True
+                    if column.target and column.target.is_directory:
+                        column.need_redraw = True
                 self.ui.status.need_redraw = True
                 self.ui.redraw()
             roots.clear()
diff --git a/ranger/gui/ui.py b/ranger/gui/ui.py
index f1e1ebbb..49c99777 100644
--- a/ranger/gui/ui.py
+++ b/ranger/gui/ui.py
@@ -42,6 +42,7 @@ class UI(DisplayableContainer):
         self.keybuffer = KeyBuffer()
         self.keymaps = KeyMaps(self.keybuffer)
         self.redrawlock = threading.Event()
+        self.redrawlock.set()
 
         if fm is not None:
             self.fm = fm
@@ -257,9 +258,8 @@ class UI(DisplayableContainer):
 
     def redraw(self):
         """Redraw all widgets"""
-        if self.redrawlock.is_set():
-            return
-        self.redrawlock.set()
+        self.redrawlock.wait()
+        self.redrawlock.clear()
         self.poke()
 
         # determine which widgets are shown
@@ -274,7 +274,7 @@ class UI(DisplayableContainer):
 
         self.draw()
         self.finalize()
-        self.redrawlock.clear()
+        self.redrawlock.set()
 
     def redraw_window(self):
         """Redraw the window. This only calls self.win.redrawwin()."""
thor Kartik K. Agaram <vc@akkartik.com> 2016-07-27 22:46:56 -0700 committer Kartik K. Agaram <vc@akkartik.com> 2016-07-27 22:47:04 -0700 3157 - more testable 'random' interface' href='/akkartik/mu/commit/068random.mu?h=main&id=0c44f591f4370ce7c06ef4b8ccbee513f3552b05'>0c44f591 ^
7a84094a ^
0c44f591 ^
4a48bedc ^
0c44f591 ^



4a48bedc ^
a0331a9b ^
7a84094a ^
0c44f591 ^
4a48bedc ^
0c44f591 ^









760f683f ^
51b0936f ^



0c44f591 ^










e62ef075 ^
5fadf6f3 ^
e62ef075 ^

4a48bedc ^
e62ef075 ^














1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75