Commit Graph

12 Commits

Author SHA1 Message Date
tomFlowee 3a6e0470a5 Move processing out of UI thread
Processing can take several seconds on a mobile, so we should do that in
its own thread in order to make the progress icon continue rotating.
2024-06-30 22:27:58 +02:00
tomFlowee 59949ebe47 Add the ability to restart download
This adds a label showing the download failed and adds a retry button to
start it again.
2024-06-29 12:15:30 +02:00
tomFlowee 05732c1998 Set timeouts on network
Make requests fail on no network activity for some time. We should then
allow the user to try again.
2024-06-29 12:15:30 +02:00
tomFlowee 7cab767283 Allow the download to be restarted.
We check the first block to figure out if the download is actually the
same one we are about to start, and if it is then Pay will not re-
download the part that is already on disk.
2024-06-29 12:15:30 +02:00
tomFlowee 19efc6575f Split processing and update UI
We set the UI to change from 'downloading' state to 'processing' state,
and now we give the UI the processor time to actually show this new
state on the screen before we start that processing step.
2024-06-29 12:15:30 +02:00
tomFlowee c9d3e5ade4 Fix replacement headers on Android
seems renaming a file that is mapped is not possible on Android, but
remove is. This code now removes the original static headers after we
get an approval of the downloaded file.
2024-06-26 21:30:03 +02:00
tomFlowee 7ee064dd59 Add assert detecting misuse. 2024-06-23 19:37:58 +02:00
tomFlowee 47f991a36e Make the DownloadChecker.qml actually functional.
The ImportWalletPage now loads the QML provided by the module,
exposed via the metadata of modules.
The module gets just a blockheight property and then will do
"its thing".
This will either instantly close when there is nothing to do
and continue instantly to the actual import.

Or the module will check the server, initiate download and when
all is setup and done THEN close the popup and continue with
the actual import.
2024-06-23 19:37:58 +02:00
tomFlowee 56f6fcf43c Add QML properties 2024-06-23 19:37:58 +02:00
tomFlowee 6d1cc00eeb Finish the basic functionality of the checker. 2024-06-23 19:37:58 +02:00
tomFlowee ef462fb9df Give some meat to the BlockHeadersChecker
This actually checks the need for downloading more headers,
then decides on which headers to download (from which known checkpoint,
really) and downloads them to a file.
2024-06-23 19:37:58 +02:00
tomFlowee 491af94040 Provide another plugin integration.
Plugins can be plugged into the main menu and the send menu already,
this adds the ability for a (section of a) plugin to be loaded as
custom component in the main app, among others.
2024-06-23 19:37:52 +02:00