fix: payment request related stuff (qt crash, exporting, refresh bug)
This commit is contained in:
parent
e7d4bf2945
commit
0d0f8c5842
|
@ -70,8 +70,8 @@ class InvoiceList(MyTreeWidget):
|
||||||
item = self.itemAt(position)
|
item = self.itemAt(position)
|
||||||
if not item:
|
if not item:
|
||||||
return
|
return
|
||||||
key = item.data(0, 32)
|
key = item.data(0, Qt.UserRole)
|
||||||
column = self.currentColumn()
|
column = self.currentColumn()
|
||||||
column_title = self.headerItem().text(column)
|
column_title = self.headerItem().text(column)
|
||||||
column_data = item.text(column)
|
column_data = item.text(column)
|
||||||
pr = self.parent.invoices.get(key)
|
pr = self.parent.invoices.get(key)
|
||||||
|
|
|
@ -1684,10 +1684,10 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
||||||
grid.addWidget(QLabel(format_time(expires)), 4, 1)
|
grid.addWidget(QLabel(format_time(expires)), 4, 1)
|
||||||
vbox.addLayout(grid)
|
vbox.addLayout(grid)
|
||||||
def do_export():
|
def do_export():
|
||||||
fn = self.getOpenFileName(_("Save invoice to file"), "*.bip70")
|
fn = self.getSaveFileName(_("Save invoice to file"), "*.bip70")
|
||||||
if not fn:
|
if not fn:
|
||||||
return
|
return
|
||||||
with open(fn, 'w') as f:
|
with open(fn, 'wb') as f:
|
||||||
data = f.write(pr.raw)
|
data = f.write(pr.raw)
|
||||||
self.show_message(_('Invoice saved as' + ' ' + fn))
|
self.show_message(_('Invoice saved as' + ' ' + fn))
|
||||||
exportButton = EnterButton(_('Save'), do_export)
|
exportButton = EnterButton(_('Save'), do_export)
|
||||||
|
@ -1695,6 +1695,7 @@ class ElectrumWindow(QMainWindow, MessageBoxMixin, PrintError):
|
||||||
if self.question(_('Delete invoice?')):
|
if self.question(_('Delete invoice?')):
|
||||||
self.invoices.remove(key)
|
self.invoices.remove(key)
|
||||||
self.history_list.update()
|
self.history_list.update()
|
||||||
|
self.invoice_list.update()
|
||||||
d.close()
|
d.close()
|
||||||
deleteButton = EnterButton(_('Delete'), do_delete)
|
deleteButton = EnterButton(_('Delete'), do_delete)
|
||||||
vbox.addLayout(Buttons(exportButton, deleteButton, CloseButton(d)))
|
vbox.addLayout(Buttons(exportButton, deleteButton, CloseButton(d)))
|
||||||
|
|
|
@ -480,6 +480,7 @@ class InvoiceStore(object):
|
||||||
d = json.loads(f.read())
|
d = json.loads(f.read())
|
||||||
self.load(d)
|
self.load(d)
|
||||||
except:
|
except:
|
||||||
|
traceback.print_exc(file=sys.stderr)
|
||||||
return
|
return
|
||||||
self.save()
|
self.save()
|
||||||
|
|
||||||
|
@ -495,6 +496,9 @@ class InvoiceStore(object):
|
||||||
|
|
||||||
def get_status(self, key):
|
def get_status(self, key):
|
||||||
pr = self.get(key)
|
pr = self.get(key)
|
||||||
|
if pr is None:
|
||||||
|
print_error("[InvoiceStore] get_status() can't find pr for", key)
|
||||||
|
return
|
||||||
if pr.tx is not None:
|
if pr.tx is not None:
|
||||||
return PR_PAID
|
return PR_PAID
|
||||||
if pr.has_expired():
|
if pr.has_expired():
|
||||||
|
|
Loading…
Reference in New Issue