From 37ba7277aeeaba165bc1cbe690d48b5e1a42df6d Mon Sep 17 00:00:00 2001 From: SomberNight Date: Fri, 6 May 2022 20:02:53 +0200 Subject: [PATCH] qt main_window: fix visual artifact when opening (re invoice lists) InvoiceList.update() calls hide_if_empty(), which calls setVisible(). setVisible(True) should not be called before the widget is properly parented and put into a layout, as that results in a blank window flashing up (appearing and disappearing) briefly. --- electrum/gui/qt/invoice_list.py | 1 - electrum/gui/qt/main_window.py | 2 ++ electrum/gui/qt/request_list.py | 1 - 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/electrum/gui/qt/invoice_list.py b/electrum/gui/qt/invoice_list.py index 76bcf5a64..8889e9a04 100644 --- a/electrum/gui/qt/invoice_list.py +++ b/electrum/gui/qt/invoice_list.py @@ -73,7 +73,6 @@ class InvoiceList(MyTreeView): self.setModel(self.proxy) self.setSortingEnabled(True) self.setSelectionMode(QAbstractItemView.ExtendedSelection) - self.update() def refresh_row(self, key, row): invoice = self.parent.wallet.invoices.get(key) diff --git a/electrum/gui/qt/main_window.py b/electrum/gui/qt/main_window.py index 4f863a502..5fa92e3b5 100644 --- a/electrum/gui/qt/main_window.py +++ b/electrum/gui/qt/main_window.py @@ -1264,6 +1264,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, Logger): vbox.addWidget(self.receive_requests_label) vbox.addWidget(self.request_list) vbox.setStretchFactor(self.request_list, 1000) + self.request_list.update() # after parented and put into a layout, can update without flickering return w @@ -1553,6 +1554,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, Logger): vbox.addWidget(self.invoice_list) vbox.setStretchFactor(self.invoice_list, 1000) w.searchable_list = self.invoice_list + self.invoice_list.update() # after parented and put into a layout, can update without flickering run_hook('create_send_tab', grid) return w diff --git a/electrum/gui/qt/request_list.py b/electrum/gui/qt/request_list.py index c3c215843..571cf5d24 100644 --- a/electrum/gui/qt/request_list.py +++ b/electrum/gui/qt/request_list.py @@ -74,7 +74,6 @@ class RequestList(MyTreeView): self.setSortingEnabled(True) self.selectionModel().currentRowChanged.connect(self.item_changed) self.setSelectionMode(QAbstractItemView.ExtendedSelection) - self.update() def select_key(self, key): for i in range(self.model().rowCount()):