Commit Graph

24 Commits

Author SHA1 Message Date
tomFlowee dfabcde813 Use Basic QQ Controls theme
The non-themed import basically is just a proxy using some
auto-detection to find out which theme to use.
As the app only uses the basic theme, this is what we'll import.
2025-06-19 15:09:36 +02:00
tomFlowee 69e390ac6c Add support for pasting a bip70 style url 2025-03-25 14:41:46 +01:00
tomFlowee da74669dbe Refactors and cleanups. 2025-01-06 23:29:17 +01:00
tomFlowee 1b1bf7164b Rename property and be consistent.
The TextButton already had an 'image' and now got an 'icon'
added. So having the fallback of the image have a name with
icon in it was just confusing.
2024-12-23 18:51:55 +01:00
tomFlowee 86ced6f747 Avoid duplication, move to file. 2024-12-23 18:44:30 +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 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 4eb0053042 A litheny of UX-bugfixes. 2023-07-05 12:24:31 +02:00
tomFlowee 030380dd44 KISS 2023-06-13 19:00:08 +02:00
tomFlowee 42d3c2e96b Make the build-transactions module function
This moves the last of the assets to the module and provides the base
requirements to actually make the featue function from a module.
2023-06-13 15:59:37 +02:00
tomFlowee 717eafcb1e remove commented out code 2023-06-11 18:20:23 +02:00
tomFlowee 914e4a5d55 Also allow InstaPay config from send-tab 2023-05-19 16:29:36 +02:00
tomFlowee 1c209a16bc Start new screen: build transaction. 2023-03-10 22:24:31 +01:00
tomFlowee 3295910e94 Remove not existing feature from menu. 2022-12-08 15:27:59 +01:00
tomFlowee 73a44e31c5 Add new icons
For the send and receive tabs.

Half an hour with Inkscape, I'm a little proud of these two icons.
Created them myself.
2022-12-08 15:27:59 +01:00
tomFlowee 55694bf28c Make scanner part feature complete.
We now make the scanner ignore barcodes that do not fit the expected
content.
We now detect 'seedphrase' and 'address' and bip21 type payment urls.
2022-12-05 18:34:53 +01:00
tomFlowee 324255c0ea Refactor camera support
After working on android and the qtmultimedia library for a week,
I have a much better understanding of what works and what doesn't.
The resulting design is thus presented. We will have one
CameraController class which refers to one overlay panel in QML
and in different places in the GUI objects based on QRScanner
can be created to initiate a scan.

This additionally moves the actual scanning out of the GUI thread
since blocking that is a no-no.

Now to move towards actually supporting scanning usecases.
2022-12-03 19:34:23 +01:00
tomFlowee b346f21871 Bugfixes in camera code.
Also upstreamed in ZXing-cpp (pr 451 + 453).

Also, re-enable clear-whitespace.
2022-12-02 14:12:20 +01:00
tomFlowee 46d34df2a0 Actually scan for QRs.
This takes the camera feed and pipes it through the ZXing (pronounced
zebra-crossing) library which detects the barcodes in the image.
When we find it, we pluck out the text.
2022-12-01 23:53:21 +01:00
tomFlowee 52e6f85cbb Move camera init to C++ 2022-11-30 17:53:47 +01:00
tomFlowee 95d2b57cb3 Add basically functional camera support
This makes it possible for the mobile app on Android to use the camera.
We only ask for permission when the user actively goes to the 'QR-Scan'
tab, and we show a simple preview of the camera feed.

Notice that the permissions stuff is quite ugly right now due to Qt
having that module in development and the public APIs are simply not
available yet. But at least it works, which is all that matters.
When the next minor Qt release comes out we can hopefully clean this
up and use a version that needs no ifdefs.
2022-11-29 23:51:14 +01:00
tomFlowee 59b0b300db Use QtMultimedia 2022-11-29 23:51:14 +01:00
tomFlowee 143cf3fef8 Slowly moving to the extra tab 2022-11-29 23:51:14 +01:00