Commit Graph

1961 Commits

Author SHA1 Message Date
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 184ca5136a Draft UX idea 2024-12-21 13:04:19 +01:00
tomFlowee b64082dfa4 Add icon feature to TextButton 2024-12-21 12:50:53 +01:00
tomFlowee f3de74d7b3 Add subtext 2024-12-21 12:50:27 +01:00
tomFlowee 0dbff50f2b Rename for consistency and cleanup
This cleans up the frame after usage in order to make sure that the next
iteration of scanning will happen based on new data.
2024.12.0
2024-12-18 16:56:10 +01:00
tomFlowee 520241ba9b Remove support for old Qt
This removes the support for older than qt65 for mobile.
Qt65 was released April 2023, making the code we now release not
needed anymore. End of 2024, and us moving to 6.8 feels like we're
safe in removing it.
2024-12-18 15:51:55 +01:00
tomFlowee 581db51e71 Import translations from crowdIn 2024-12-18 14:00:35 +01:00
tomFlowee 6e6c909be5 Add Christmas-egg
The easter-egg for Christmas.
2024-12-18 13:05:52 +01:00
tomFlowee dd596c5740 Refactor notifications and add Android support
This takes the NotificationManager and splits it into multiple
compile units based on the backend that is available.
The 'dbus' was the only one available so far (which serves
kde/gnome desktops) and this is moved to its own file.
This adds android support as well, but so far only for block
notifications (when a new block is mined).
2024-12-18 13:05:52 +01:00
tomFlowee 673e816961 Fix package 2024-12-18 13:05:52 +01:00
tomFlowee 7f06c0b162 Make this a comment. 2024-12-16 10:42:28 +01:00
tomFlowee 9364b2e97a Prepare for december release 2024-12-16 10:30:20 +01:00
tomFlowee 197fd07dde Merge branch 'android-buildenv' 2024-12-16 10:18:42 +01:00
tomFlowee 9598e547d0 Use new Qt 2024-12-16 10:10:12 +01:00
tomFlowee 61967f61f8 Remove no longer needed hack 2024-12-16 10:10:12 +01:00
tomFlowee 814fc82897 Adjust Qt build
This reverts a broken Qt patch wrt translation selection. See QTBUG-131894
This removes various Qt features from the build that we don't need
in order to keep the library size down.
The qtdeclarative module went from 4285 ninja tasks to 2387, or for the
android buld from 4117 to 2251.
2024-12-16 10:10:12 +01:00
tomFlowee 86dcb5c39e Stop mixing two format types
This now switches to only using html, removing some markdown headers.
2024-12-16 10:10:12 +01:00
tomFlowee a9c387e42a Pick behavior of Qt6.6 or later cmake feature. 2024-12-16 10:10:12 +01:00
tomFlowee e7b8740986 Avoid copy 2024-12-16 10:10:12 +01:00
tomFlowee b463347b39 Upgrade versions in reproducable Android build
This updates all the relevant libraries we use to their latest stable
versions in the reproducable build environment we use for Android.
2024-12-16 10:10:12 +01:00
tomFlowee 33a728799d Switch explorer
The blockchair explorer seems to be down a lot more, so lets
point to the new iteration from the same team.  3xpl.com
2024-12-04 23:43:05 +01:00
tomFlowee bb4ebdfadd Import updated translations from crowdin 2024-12-01 17:43:57 +01:00
tomFlowee 45832b1b9e Rewrite progressbar UI component
Have a different approach which makes everything much simpler
2024-12-01 13:57:18 +01:00
tomFlowee 3c9f1111e8 Fetch current price only when needed
Only fetch on startup if the last fetch is more than 5m ago
2024-11-30 16:54:55 +01:00
tomFlowee bc2ee8abe6 Auto hide sync status when we're up to date.
This upgrades us to no longer use the expected block height based
on current time, but instead uses the certainty we get from asking
various peers for their view of the world.
Now when we are certain that we're at the same tip as the rest of
the world, we can safely hide the 'up to date' text and make the UX
again a little bit simpler.
2024-11-30 16:54:55 +01:00
tomFlowee f72663df66 Add backup sync progress to bar 2024-11-30 14:33:15 +01:00
tomFlowee d16695c35b Qualify properties when not clear. 2024-11-29 15:50:42 +01:00
tomFlowee 8bbea6c0fe Follow upstream wrapping of shared_ptr 2024-11-29 15:40:15 +01:00
tomFlowee aa7096a2d2 Avoid doing work when no request is open. 2024-11-29 14:59:07 +01:00
tomFlowee 68116d978f This chooses the cmake boost finding behavior
CMake details for finding boost have been shipped for years inside
of boost, this makes cmake use that upsteam info to configure boost
and avoids problems when a newer boost than cmake is found.
2024-11-28 23:26:55 +01:00
tomFlowee 2012d6df6d Avoid a define for the wallet log level.
This is a general cleanup, making the log levels not be defines but just
a constexpr or hardcoded. Just like all of them.
2024-11-28 23:14:28 +01:00
tomFlowee 527c1c3dc5 Various possible fixes for camera usage. 2024.10.2 2024-10-31 20:50:01 +01:00
tomFlowee 7a7270e9d8 Fix linter warnings from QML 2024-10-31 15:32:36 +01:00
tomFlowee 168dd95430 Document that Qt fixed this. 2024-10-31 14:50:01 +01:00
tomFlowee 815e21d233 Make a specific icon for the QR shortcut 2024-10-31 12:51:51 +01:00
tomFlowee f053b34ded Cleanup imports 2024-10-31 12:09:33 +01:00
tomFlowee 26b48c5c49 Add Android shortcut: Scan QML
On Android an app can ship with (static) shortcuts. We use this feature
to allow the user to create a new icon which still starts Flowee Pay,
but it instantly opens the payment screen on the QR scanner.
2024-10-31 12:09:19 +01:00
tomFlowee c97890401e Show seed-phrase-password in backup details pages. 2024-10-28 14:47:34 +01:00
tomFlowee 65eb981d83 Revise import wallet pages
The vast vast majority of wallets imported will not have a password. So
we de-prioritize that and make the user aware of the password field
should they check the contents without one.

This moves the 'wallet name' again to the top for all types as the most
observed mistake is that people type a wallet-name in the password field
and then are confused why there is nothing there. (and additionally
annoyed that the name of the wallet is auto-generated).

Other fixes includes spacing and alignment.
Keyboard focus on desktop.
2024-10-28 13:41:24 +01:00
tomFlowee 191c22b549 Return zero fees if we don't have info 2024-10-28 11:26:19 +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 cabaece733 New version 2024-10-27 21:54:48 +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 6b9473e304 Fix indent. 2024-10-27 21:54:48 +01:00
tomFlowee 1203da046d cleanup includes 2024-10-27 21:54:48 +01:00
tomFlowee 19a19df5d3 No longer make sweep module enabled by default
With webpage based scanning and the landing page button, the access is
there. No need to have a button always on the 'send' tab.
2024-10-27 21:54:48 +01:00
tomFlowee 8e79d9ef9b Make startup screen show the 'cash stamp' button always.
Even if the related module is not enabled.
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