qt: don't flash QWidgets on startup before main window is visible

Consider wallet without password set. Using Qt GUI.
When starting the app, before the main window appears, small artefacts
("minimised" windows?) would appear very briefly and then disappear.
This commit is contained in:
SomberNight 2018-12-12 19:58:13 +01:00
parent 363dd12a2a
commit 9bbfd610be
No known key found for this signature in database
GPG key ID: B33B5F232C6271E9
2 changed files with 11 additions and 8 deletions

View file

@ -58,8 +58,10 @@ class InvoiceList(MyTreeView):
item[3].setFont(QFont(MONOSPACE_FONT))
self.addTopLevelItem(item)
self.selectionModel().select(self.model().index(0,0), QItemSelectionModel.SelectCurrent)
self.setVisible(len(inv_list))
self.parent.invoices_label.setVisible(len(inv_list))
if self.parent.isVisible():
b = len(inv_list) > 0
self.setVisible(b)
self.parent.invoices_label.setVisible(b)
def import_invoices(self):
import_meta_gui(self.parent, _('invoices'), self.parent.invoices.import_file, self.update)

View file

@ -67,6 +67,7 @@ class RequestList(MyTreeView):
def update(self):
self.wallet = self.parent.wallet
# hide receive tab if no receive requests available
if self.parent.isVisible():
b = len(self.wallet.receive_requests) > 0
self.setVisible(b)
self.parent.receive_requests_label.setVisible(b)