Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 2.0, 2.0.1, and 2.0.2

stable filelistview: only call fileSelected() when necessary

This logic prevents multiple fileSelected() calls from being triggered, further
preventing duplicate fileRevSelected signals from being emitted, reducing extra
work.

Changeset fcdb9d0d79c9

Parent 6dcd9df12a94

by Steve Borho

Changes to one file · Browse files at fcdb9d0d79c9 Showing diff from parent 6dcd9df12a94 Diff from another changeset...

 
84
85
86
87
 
 
 
88
 
 
 
 
 
 
 
89
90
91
 
 
92
93
94
 
84
85
86
 
87
88
89
90
91
92
93
94
95
96
97
98
 
 
99
100
101
102
103
@@ -84,11 +84,20 @@
  def layoutChanged(self):   'file model has new contents'   index = self.currentIndex() - if index.row() >= len(self.model()) or index.row() == -1: + count = len(self.model()) + if index.row() == -1: + # index is changing, fileSelected() called for us   self.selectRow(0) + elif index.row() >= count: + if count: + # index is changing, fileSelected() called for us + self.selectRow(count-1) + else: + self.clearDisplay.emit() + self.actionSecondParent.setEnabled(False)   else: - self.selectRow(index.row()) - self.fileSelected() + # redisplay previous row + self.fileSelected()     def fileSelected(self, index=None, *args):   if index is None: