URI: 
       tMerge pull request #3851 from bauerj/update-scrollpos - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 4e19484b4aa06557085bde5dcb785dd7e4e9048e
   DIR parent d9cf4c2b63ed8c6c07b26a31d322cd5e69e55ad1
  HTML Author: ThomasV <thomasv@electrum.org>
       Date:   Tue,  6 Feb 2018 10:07:36 +0100
       
       Merge pull request #3851 from bauerj/update-scrollpos
       
       Reset scroll position after updating lists
       Diffstat:
         M gui/qt/history_list.py              |       4 ++--
         M gui/qt/util.py                      |       4 ++++
       
       2 files changed, 6 insertions(+), 2 deletions(-)
       ---
   DIR diff --git a/gui/qt/history_list.py b/gui/qt/history_list.py
       t@@ -70,7 +70,6 @@ class HistoryList(MyTreeWidget, AcceptFileDragDrop):
        
            @profiler
            def on_update(self):
       -        # TODO save and restore scroll position (maybe based on y coord or selected item?)
                self.wallet = self.parent.wallet
                h = self.wallet.get_history(self.get_domain())
                item = self.currentItem()
       t@@ -213,4 +212,5 @@ class HistoryList(MyTreeWidget, AcceptFileDragDrop):
                        self.parent.show_error(e)
                    else:
                        self.wallet.save_transactions(write=True)
       -                self.on_update()
       +                # need to update at least: history_list, utxo_list, address_list
       +                self.parent.need_update.set()
   DIR diff --git a/gui/qt/util.py b/gui/qt/util.py
       t@@ -478,8 +478,12 @@ class MyTreeWidget(QTreeWidget):
                    self.pending_update = True
                else:
                    self.setUpdatesEnabled(False)
       +            scroll_pos = self.verticalScrollBar().value()
                    self.on_update()
                    self.setUpdatesEnabled(True)
       +            # To paint the list before resetting the scroll position
       +            self.parent.app.processEvents()
       +            self.verticalScrollBar().setValue(scroll_pos)
                if self.current_filter:
                    self.filter(self.current_filter)