1
0
Commit Graph

51 Commits

Author SHA1 Message Date
Sander van Grieken
a23457f48d qml: consistency camelcase pyqtProperties 2023-04-25 14:15:13 +02:00
Sander van Grieken
264540e12b qml: consistency camelcase public slots qedaemon, qeinvoice, qewizard 2023-04-25 13:40:16 +02:00
Sander van Grieken
6c65161d27 qml: refactor qeinvoice.py
QEInvoice/QEInvoiceParser now properly split for mapping to Invoice type (QEInvoice)
and parsing/resolving of payment identifiers (QEInvoiceParser).
additionally, old, unused QEUserEnteredPayment was removed.

invoices are now never saved with user-entered amount if the original invoice
did not specify an amount (e.g. address-only, no-amount bip21 uri, or no-amount
lightning invoice). Furthermore, QEInvoice now adds an isSaved property so the
UI doesn't need to infer that from the existence of the invoice key.

Payments of lightning invoices are now triggered through QEInvoice.pay_lightning_invoice(),
using the internally kept Invoice instance. This replaces the old call path of
QEWallet.pay_lightning_invoice(invoice_key) which required the invoice to be saved
in the backend wallet before payment.

The LNURLpay flow arriving on InvoiceDialog implicitly triggered payment, this is
now indicated by InvoiceDialog.payImmediately property instead of inferrred from the
QEInvoiceParser isLnurlPay property.
2023-04-04 16:13:00 +02:00
ThomasV
ba82813c06 qml InvoiceDialog: remove delete button, it only makes sense if you visit the list 2023-04-01 14:05:58 +02:00
ThomasV
d6cbaaa2e9 qml InvoiceDialog: show invoice type in the title, fallback address in the details 2023-04-01 12:26:46 +02:00
Sander van Grieken
2bdc303662 qml: keep lnurlData even after bolt11 has been retrieved, add isLnurlPay property and save bolt11 before triggering pay 2023-03-31 15:39:29 +02:00
Sander van Grieken
244ead2624 qml: auto-pay if entering InvoiceDialog from a lnurl-pay dialog 2023-03-31 15:05:05 +02:00
ThomasV
5ef7fabc73 qml InvoiceDialog: merge status and userinfo 2023-03-30 11:24:50 +02:00
Sander van Grieken
cc60ab0b20 qml: move payment progress info text updates fully into qeinvoice, qeinvoice now updates itself
directly from backend wallet callbacks
2023-03-29 19:08:11 +02:00
Sander van Grieken
7efd6fe1e2 qml: don't show ln payment dialog, update info text instead 2023-03-29 19:08:11 +02:00
Sander van Grieken
05d6c5155c qml: use invoice.amount directly in amounts display 2023-03-29 18:05:55 +02:00
Sander van Grieken
229047de19 qml: followup 1e6b692516 2023-03-27 11:54:28 +02:00
Sander van Grieken
1e6b692516 qml: bind invoice.amount to internal property. fixes #8262 2023-03-27 11:46:00 +02:00
Sander van Grieken
677e1259df qml: ElDialog now defaults to parent on Overlay.overlay
This was replicated in basically all ElDialog derived dialogs
2023-03-20 16:53:40 +01:00
ThomasV
d7c5c40c1d Save user-entered amount in invoice. fixes #8252.
Note that this allows users to save invoices that have an empty
amount, which is not allowed by the Qt GUI. Qt will complain at
pay time about empty amount if a lightning invoice without amount
is saved. With onchain invoices, Qt will create an onchain tx with
a zero output.
2023-03-18 17:29:56 +01:00
Sander van Grieken
231ea5d03b qml: status icon InvoiceDialog 2023-03-17 17:33:00 +01:00
Sander van Grieken
24a3d6e10f qml: remove editmode toggle, now enabled only on amount-less invoices 2023-03-17 16:46:58 +01:00
Sander van Grieken
a571451179 qml: allow pay while amount in edit mode 2023-03-17 11:51:48 +01:00
ThomasV
e2867b7fe8 qml: move Pay button to the right
the default action should always be to the right side, because
right-handed people are dominating the world :-).
2023-03-16 13:02:54 +01:00
Sander van Grieken
8db2dcabe3 qml: Invoice Dialog technical details header only relevant for lightning 2023-03-16 10:11:33 +01:00
Sander van Grieken
2881c49671 qml: move technical details to bottom of InvoiceDialog, add routing hints 2023-03-15 15:19:30 +01:00
Sander van Grieken
5fd7721508 qml: de-dupe broadcastFailed handler, styling InvoiceDialog amount 2023-03-13 18:22:51 +01:00
Sander van Grieken
faf0c80893 qml: enable canPay in InvoiceDialog if wallet has insufficient funds to pay via lightning
and invoice has fallback address and amount can be paid on-chain.
In WalletMainView, follow on-chain payment path if available lighting balance is
insufficient for the invoice amount
2023-03-13 18:07:37 +01:00
Sander van Grieken
b16fb5088b qml: padding around label above TextHighlightPanes 2023-03-03 15:05:29 +01:00
Sander van Grieken
2b0e624876 qml: styling CloseChannelDialog, InvoiceDialog 2023-02-14 12:32:33 +01:00
Sander van Grieken
8a8703d5ea qml: styling 2023-02-10 17:24:39 +01:00
Sander van Grieken
d1a40c47cf qml: fix max toggle in InvoiceDialog 2023-02-09 12:42:09 +01:00
Sander van Grieken
1e60cb740f qml: fixes TextHighlightPane 2023-02-09 01:21:09 +01:00
Sander van Grieken
b2a02dd047 qml: put FlatButtons in ButtonContainer where (potentially) more buttons are grouped 2023-02-03 13:34:53 +01:00
Sander van Grieken
3c1e4ba5a5 qml: remove Dialog standardButtons everywhere 2023-01-17 18:03:13 +01:00
Sander van Grieken
34d483b365 qml: fix invoice amount editable when expired 2023-01-09 17:44:07 +01:00
Sander van Grieken
562b4c50df qml: add a few more dialog icons 2023-01-02 17:02:19 +01:00
Sander van Grieken
90d64a004b qml: make dialog content flickable for small displays for CloseChannelDialog, OpemChannelDialog and InvoiceDialog 2022-12-28 16:07:30 +01:00
Sander van Grieken
3ace53391f qml: disable pay button while editing amount, perform minimum amount check for lightning invoices, update amount in invoice list. 2022-10-26 11:12:58 +02:00
Sander van Grieken
b37262f232 qml: proper check for max amount onchain. move max amount lightning to superclass 2022-10-21 13:24:39 +02:00
Sander van Grieken
a1fac70ebc qml: fix bug with lingering info text from previous shown invoice 2022-10-21 13:01:45 +02:00
Sander van Grieken
65250e69d8 qml: add max amount option in invoice dialog and show in invoice delegate 2022-10-20 17:18:46 +02:00
Sander van Grieken
c7cdd42665 qml: ui 2022-10-19 14:15:24 +02:00
Sander van Grieken
685f32750c qml: ui 2022-10-05 18:00:51 +02:00
Sander van Grieken
488600788e qml: open invoices list after saving invoice, add invoice to model instead of reloading the whole list 2022-10-05 11:07:40 +02:00
Sander van Grieken
de83a10c20 qml: restore Save button in InvoiceDialog, restore invoice list view, now from menu 2022-10-04 16:33:22 +02:00
Sander van Grieken
fd791f4fb1 qml: make request types clickable, some fixes 2022-09-30 09:27:55 +02:00
Sander van Grieken
d65a7e7efc change address-only handling: create amount=0 onchain invoice
invoicedialog auto enables edit mode when amount is 0
2022-09-28 18:21:07 +02:00
Sander van Grieken
fb68931a8d allow zero amount invoices, add edit amount option for invoices 2022-09-28 18:21:07 +02:00
Sander van Grieken
3b9c009e43 qml: include dialogs in back button navigation 2022-07-26 18:01:25 +02:00
Sander van Grieken
71cd996379 InvoiceDialog: add balance & expired checks on invoices, add a few ln invoice fields to show 2022-07-07 18:29:02 +02:00
Sander van Grieken
4c9f713f9a further separate invoice objects 2022-07-07 18:29:02 +02:00
Sander van Grieken
f8dd411148 styling 2022-07-07 18:29:01 +02:00
Sander van Grieken
1d5a273629 add address to InvoiceDialog for OnchainInvoice type 2022-07-07 18:29:01 +02:00
Sander van Grieken
8f8a1fc8cf wip 2022-07-07 18:29:01 +02:00