Commit Graph

20 Commits

Author SHA1 Message Date
tomFlowee 6dc315cc77 Fix race condition, add autostartSkipped signal
This fixes the issue that the "sweep from browser" would consume the
property before the QR scanner had time to decide it should skip
scanning due to that property existing.
2024-10-28 10:24:58 +01:00
tomFlowee 7e60f1fdea Refactor Intent: disconnect from app lifetime
The idea of using Flowee Pay to open a payment screen, or a sweep
screen, was so far married to the executable lifetime due to it being
passed as a command line argument.
This does not reflect reality, on neither desktop nor on mobile as
multi-tasking is possible and we should allow that.

As a result the new object "Intent" has been introduced with the
usecase specific properties. Setting those properties at any time
during the lifetime of the app now pushes the correct page to the
stack on mobile. Desktop is in need of more love in this department.
2024-10-27 21:54:48 +01:00
tomFlowee 0fc17ea5f8 Add bch-wif scheme support for mobile
This allows a user to click on a link in a browser with the bch-wif
scheme and we'll handle that with a sweep page on startup.

To avoid this being just-another-special case we introduce a new
module (read: plugin) concept that is a Start-screen type.
The idea is that we can have a generic handling of this type in
various parts of the app without it being specifically about the
wif handling.

Notice that it doesn't matter if the user has the module enabled,
which just operates the display of the menu option to start it manually.
2024-10-27 21:54:48 +01:00
tomFlowee afa23dba9b Also move control of 'enabled' to the module dev.
The virtua method allows full freedom for module devs to interpret the
user enabling or disabling the module and any of it child sections.
2024-10-27 21:54:48 +01:00
tomFlowee 9f69241bbb API level rename of 'send' to 'action'
As we get more modules it turns out that the 'send' tab as originally
envisioned isn't really representative of how we're evolving.
Various items end up being about doing 'stuff' in general. Including
creating a transaction to receive. Only in a very loose way can we
say those are 'send' items.

So, without actually any user-visible changes, this renames the
enum in the module manager and module-section to make it about the
more accurate "action menu".
2024-10-19 23:09:20 +02:00
tomFlowee 1aa3a14611 Improve downloading of list of transactions
The Sweep feature needs the 'previous' transactions to build the new
transaction.
This shows a progress-report per-transaction as they are downloaded.

Additionally this splits the incoming electron-X reply into lines before
processing.
2024-10-14 20:09:43 +02:00
tomFlowee 1b4ee23f46 Make sweep screen better translatable 2024-10-14 13:28:25 +02:00
tomFlowee e9ee0a22b8 Show num coins found as soon as we know. 2024-10-09 16:53:07 +02:00
tomFlowee 333f1fb401 Re-engineer the TxInfoObject
This separates it into two objects in order to make thead-safety easy
using Qt's signal/slot mechanism.
Additionally this removes magic timeout numbers and simply starts a
timer to check for changes and emit a signal if the status actually
needs updating.

Testing also shows that QML calls the getter a LOT, so I also moved the
broadcastStatus to be buffered and just return that on the call.
This incidentally also simplifies the code, double win.
2024-10-09 16:43:05 +02:00
tomFlowee e96a401bc2 Cleanup and polish the send/sweep module 2024-10-08 21:17:09 +02:00
tomFlowee 4634e17578 Cleanup after ourselves.
The transactions we spent from are downloaded in full, after adding the
spending transaction to the wallet we delete them.
2024-10-06 14:16:43 +02:00
tomFlowee 6aff98edf1 Export more properties and make UX of sweep look good 2024-10-06 14:07:33 +02:00
tomFlowee d7be2d27d6 Add sendsweep properties
This exposes some of the backend data to be shown in the UI.
Also Make 'paste' available for WIFs.
2024-10-06 11:09:34 +02:00
tomFlowee 0ecb7521ad Make AccountSelectorWidget reusable without a Payment 2024-10-05 21:30:39 +02:00
tomFlowee df9f294ee9 Add camera help text to SendSweep page. 2024-10-05 21:13:14 +02:00
tomFlowee 5def4efd26 Build the transaction from the given transactions 2024-10-04 17:14:42 +02:00
tomFlowee 08e2216ce3 Allow result to be used by SweepHandler 2024-10-03 17:57:10 +02:00
tomFlowee caea90b3cb Add ElectronX interaction.
This adds the fetching of utxos and the containing transactions from a
compliant electronx server. Like fulcrum.
2024-10-03 17:57:10 +02:00
tomFlowee 3aa28743f1 Start implementing the sweep module
This adds scanning of private key and processing the data.
2024-10-02 23:04:38 +02:00
tomFlowee 9b7d6749e4 Start new send-sweep module 2024-10-01 21:26:01 +02:00