Commit Graph

111 Commits

Author SHA1 Message Date
tomFlowee d9991cace6 Prepare modules for i18n 2025-03-04 12:43:37 +01:00
tomFlowee 3ab63d6dc5 strings; Be much less technical 2025-03-03 17:01:29 +01:00
tomFlowee 21eeab2f98 Add offline checking for Android.
Add logic to notice that the device is offline and notify the
user of this fact on screen.
Repeat checking so we can notify the user that network is back.

This shows in the UI (of the mobile form factor) that the device
is offline and we avoid starting the p2p layer until network
is detected to be there again.
2025-03-02 19:57:02 +01:00
tomFlowee 3d821d4be4 Add NewIndicator on socialFeedModule 2025-02-25 19:38:39 +01:00
tomFlowee 7b693e9a60 Add priority to modules for display purposes. 2025-02-25 17:04:13 +01:00
tomFlowee 3ee2663241 Make broadcastfeedback work on instaPay payments too. 2025-02-17 16:23:24 +01:00
tomFlowee 99c0b20171 Add even/odd background colors to the social feed. 2025-02-17 12:17:03 +01:00
tomFlowee 6420523847 Port asio to stop using deprecated methods. 2025-02-11 19:52:03 +01:00
tomFlowee 63385c8a8c Follow upstream; port asio usage 2025-02-08 21:16:12 +01:00
tomFlowee c4cea6ce61 Improve the BroadcastFeedback page 2025-02-04 22:33:08 +01:00
tomFlowee 30ccadb026 Unify the broadcast feedback screen.
This avoids duplication in the send-sweep module.
2025-02-04 21:20:35 +01:00
tomFlowee 2d4eeeeaa7 Add QR scanner option to a destination 2025-02-04 18:36:35 +01:00
tomFlowee 89e8ba602f Split big file 2025-02-04 18:22:59 +01:00
tomFlowee 35d8d6752d Make work better
This uses a nicer filename with context.
We also build the user agent more correctly.
Last, this makes work the usage of HEAD to keep up to date without full
download.
2025-02-03 13:09:59 +01:00
tomFlowee c78e44f0f6 Add display 2025-02-01 15:39:44 +01:00
tomFlowee 37c1dc044d Starting new data provider
This reads the social data from a dedicated json file on our
webserver and provides this to QML
2025-02-01 14:07:22 +01:00
tomFlowee 6c9f1c4651 Merge all the instances of QNetworkAccessManager
Instead of all places having their own copy and being wasteful
in that way, we move ownership of an app wide version to the
application singleton.
2025-02-01 11:33:54 +01:00
tomFlowee 68a69c61d5 Start new social-feed module 2025-01-29 17:05:57 +01:00
tomFlowee b339648338 In this module we use rand, make sure to seed
To make this not depend on another part of Pay doing this already.
2025-01-27 13:19:54 +01:00
tomFlowee 8865a51b8b Redo all the strings.
This upgrades the initial ideas and texts of this module to the latest
insight and designs to be coherent and more easy to understand.
2025-01-09 20:06:18 +01:00
tomFlowee aceb0387a1 Send on tx swipe now works in either direction 2025-01-09 19:52:51 +01:00
tomFlowee 6caf9d6e28 Add anonimity. 2025-01-09 19:47:37 +01:00
tomFlowee b83e19b33b Make possible to use for single-address wallets.
This uses the strategy to create one transaction per utxo instead of one
per address which makes this module actually provide some usefullness to
such wallets.
2025-01-09 19:17:49 +01:00
tomFlowee 02efe2dcd1 minor issue. 2025-01-09 18:30:13 +01:00
tomFlowee 150088b1a8 BigTransfer: allow splitting.
This shows the amount of coins stored on a single address, which we
sweep in one transction by default for privacy reasons.

This adds the ability of the user to specify how many outputs a single
transaction should have when we create it.
2025-01-09 18:22:44 +01:00
tomFlowee da74669dbe Refactors and cleanups. 2025-01-06 23:29:17 +01:00
tomFlowee f06afc5351 Move allocation of target addresses
Instead of pre-allocation, this moves it to just before we actually
broadcast.
This solves a possible failure of detecting target funds in case the
number of transactions is larger than the gap and the user sends only
one or two of the later once instead of all.
2025-01-06 18:00:20 +01:00
tomFlowee 7d5686b427 Forward the broadcast status to the UI
When a transaction has been created by the plugin, this stores it also
on our UI classes and forwards the broadcast status for the front end
to use in some animation.
2025-01-01 17:36:58 +01:00
tomFlowee c2c39683db Add more checks and avoid surprises 2024-12-31 15:57:17 +01:00
tomFlowee 837bad6a13 Add Module section type; other-default
This section type means that the module will have it's icon shown in
the 'Explore' tab always, it can not be disabled by users and as such
it just becomes an overflow of the main app avoiding worry about a
module not being found.
2024-12-31 15:57:17 +01:00
tomFlowee ec32cb5f8f fix grammar 2024-12-31 15:57:17 +01:00
tomFlowee 8af9c8eac7 Make functional and not too bad looking
This is probably a good first milestone, the UX is pretty decent
and the wanted functionality is there.
Various todo's are still there which mostly of the cleanup type.
2024-12-31 15:57:17 +01:00
tomFlowee 3ccd90cc4b Add most of the workflow to the bigtransfer module
We don't actually send any transactions yet.
2024-12-26 23:41:39 +01:00
tomFlowee 533a20c769 Follow property rename in Flowee qml widget. 2024-12-26 18:42:46 +01:00
tomFlowee 94da00709d Start new module 2024-12-25 13:12:38 +01:00
tomFlowee 46c33bb4d1 Correct QtCreator's handling of cmake.
Move the added files to be in the list instead of in the call.
2024-12-24 14:49:23 +01:00
tomFlowee e200766dda Split camera and intent out of the handling pages
In the send-sweep module as well as in the PayWithQR this removes
the UserIntent handling and instead moves that to the main.qml
exclusively.
Additionally in the send-sweep module the camera work is split
into its own page, like in the other parts of the app. This helps
us avoiding hacks when we want the main functionality without the
camera.

This is the last of the series of reworks, we should have all
former functionality working again.
2024-12-23 18:36:36 +01:00
tomFlowee 3721573253 Make example module show up in the explore tab 2024-12-22 22:18:56 +01:00
tomFlowee 33799f0c1f Add new tab 'Explore'.
Continuing the 'rework send page' series.

This moves stuff that had no business being on the "Send" page to
live on a new tab instead. Prime example was the 'sweep' module
that creates a transaction we send, but to ourselves. So it's far
fetched that it fits in 'send'.
2024-12-22 17:23:27 +01:00
tomFlowee 644241255f Revert "API level rename of 'send' to 'action'"
This reverts commit 9f69241bbb.

Reason for revert is that instead of renaming the send, we're now
creating a new tab instead. So we'll keep "Send" and add a new one
as well.
2024-12-22 15:02:30 +01:00
tomFlowee 3800093643 Rework 'Send' page. Part 1.
The initial design has done well for over 2 years, but problems
are starting to show.

This does a bit of cleanup in the UX and many cleanups in the
underlying architecture that were the result of those UX choices.

We remove the clipboard (paste) concept from the camera pipeline
completely and simply make it a new top-level button "paste" on the
send page. This helps discovery AND helps architecture!

The both workflows now also become 2 stage affairs, when the button
is pressed we open a page that does the scanning or pasting and then
introspects the actual data in order to redirect to the right page.
This means that we auto-detect if the scanned item is an address or
a private key or whatever, and handle it appropriately without needing
any user interaction.
2024-12-22 14:56:14 +01:00
tomFlowee f3de74d7b3 Add subtext 2024-12-21 12:50:27 +01:00
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 1d7306d322 improve translator help text 2024-10-14 13:28:25 +02:00