Commit Graph

780 Commits

Author SHA1 Message Date
tomFlowee cf59f2f06a Make CHF as a currency work for input
As the name is so much wider the widget didn't work well, this
makes the name not overlap.

Additionally, added a space beteween the currency name and
the numbers.
2023-06-20 20:27:21 +02:00
tomFlowee 901b3b5a89 Add flickable around the import page.
Reports show that the button at the bottom may fall out the screen for
some people's settings.
2023-06-20 20:27:21 +02:00
tomFlowee a6bf542108 Revive the QR-only image after it got updated
Not all usages of the old 'QR' image were about scanning, so the
added photo frame ended up causing a UX regression for those
that were used to indicate showing a QR.

Instead we now have 2 icons (at 4kb ascii text each, thats literally
not a big deal) to acoid this confusion.
2023-06-17 16:20:32 +02:00
tomFlowee c4e64a1114 remove unused class 2023-06-15 20:28:23 +02:00
tomFlowee a1e56528f9 new feature: turn on torch on QR scan
We now show a button to turn on the from the QR scanning page.
2023-06-15 19:21:03 +02:00
tomFlowee 1377c01531 Slight alignment fixlet. 2023-06-15 15:59:07 +02:00
tomFlowee bdad39848b Make MultilineTextField usable for code setting text
This stops the widget being confused with regards to the placeholder
text when the main text is set by code instead of by user input.
2023-06-15 15:58:51 +02:00
tomFlowee d94f1faae2 Work on QR scanning
This removes the dependency on the QrEncode lib and uses
the fact that our scanning lib also is capable of making QRs.

We now allow the QR to get its color inverted for dark mode
users, making it less bright to show a QR.

This introduces a new QR-creation mode which allows spaces and
other chars to be in there directly without being URL-encoded.

This improves the QR showing of the user's seed-phrase (in the
backup screen).
This adds the ability to scan a seed phrase with your camera by
adding a button to the wallet import page.
This also adds support for the QR format that the bitcoin com
wallet uses in its QR for seed phrases.
2023-06-15 14:58:44 +02:00
tomFlowee 7be3f7bd26 Remove stray rotate property. 2023-06-14 23:10:13 +02:00
tomFlowee 9dcd608e69 Style the Flowee button.
The buttons on Android are somehow atrocious, lets style it ourselves
for consistency and actually being able to see the disabled button.
2023-06-14 22:53:51 +02:00
tomFlowee 98e193f4ca Copy the userComment here for user-editing
When the payment protocol provides a comment,
lets copy it for the user to see and maybe edit.
2023-06-14 22:53:51 +02:00
tomFlowee da864543c0 UX; pressing 'continue' on receive goes home now 2023-06-14 22:53:51 +02:00
tomFlowee 92b3b260c3 Disable clearing if there is nothing to clear. 2023-06-14 16:20:42 +02:00
tomFlowee 030380dd44 KISS 2023-06-13 19:00:08 +02:00
tomFlowee 89ff36c311 Make the ExploreModules QML prettier
This includes a self-drawn SVG of a ribbon, configurable text on top and
just a simple checkbox to recognize that at this time there is only one
category-type. KISS.
2023-06-13 18:15:52 +02:00
tomFlowee 8cef14fd80 Remove dead code 2023-06-13 15:59:37 +02:00
tomFlowee 58614e17a6 Add a module explorer page in mobile view.
This allows discovering of the modules and enabling / disabling them.
2023-06-13 15:59:37 +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 a73e004998 Move QML and introduce i18n concept for modules 2023-06-13 15:59:37 +02:00
tomFlowee 717eafcb1e remove commented out code 2023-06-11 18:20:23 +02:00
tomFlowee f904e5d413 Make the scanner overlay eat mouse events.
This stops clicks from acting on the underlying UI.
2023-06-11 18:10:39 +02:00
tomFlowee 973fc94950 when paste is used turn instaPay off
clipboards based addresses are a lot less secure, physically, than
scanning a QR.
So the user really should validate the payment and thus we turn off
instaPay in those cases.
2023-06-11 18:10:06 +02:00
tomFlowee 94f52e0c7f Add feature; paste address.
Allow users that start by 'pay' to fulfill the payment also using
clipboard instead by providing a 'paste' button on the scanning screen.
2023-06-11 17:58:27 +02:00
tomFlowee ecc5d03975 UX improvements to prioritize normal usage.
When looking at the real usage of flowee pay, we aim for this
to be used 90% (or more) of the time as a better wallet. Wallet
in the physical sense.

This implies that the vast majority of usage is going to be about
paying or receiving.
A small number of times you'll use it to look up the history of
payments.

As such, its Ok to downgrade the account history and make the main
usage more prominent and easy to find.
2023-06-10 22:41:53 +02:00
tomFlowee efa39e0337 Improve QRcode images based on feedback from A@ron 2023-06-10 22:16:08 +02:00
tomFlowee c84af22bc0 Add feedback on incorrect QR.
The scanner doesn't validate the QR, but the Payment object does. So,
verify the result after setting the url on the Payment object and raise
a dialog when the address did not work.
2023-06-05 18:12:29 +02:00
tomFlowee 32f5e5cc95 UX (spacing) fixes
This positions the Dialog more logically and avoids taking space for an
empty label.
2023-06-05 18:10:50 +02:00
tomFlowee 961041cc11 fix token check
Outputs can be null, this is when the outputs are not send to an
address we own.
2023-06-05 16:45:20 +02:00
tomFlowee 49daf7b87e Also show cashtoken indicator on mobile 2023-06-05 10:47:50 +02:00
tomFlowee 4883de304b Export the cashToken bool to the UI
Make clear that we have a cashtoken output in the UI.
2023-06-05 09:58:06 +02:00
tomFlowee 78830c8aa4 Cleanup call to no longer existing function 2023-06-04 19:20:46 +02:00
tomFlowee fe67c5273e Handle invalid addresses better.
The user input now gets the user interface string 'incorrect' instead of
'unset' if no proper address could be resolved from it.
2023-06-04 19:20:18 +02:00
tomFlowee db7162f4d3 Make editing fiat on scanning QR be default.
When you scan a QR which has no price embedded (just an address) this
makes the default go to fiat (euro/usd etc) for what you type.
2023-06-01 23:39:03 +02:00
tomFlowee fc164996d7 Improve UX about when to switch positions.
As long as the user has not added a second wallet there is no
need to show the name 'initial wallet' and thus we show the
'add wallet' button at the bottom.
2023-06-01 16:31:20 +02:00
tomFlowee f34c1e199f UX fix, this makes the 'cursor' go away at edit end. 2023-05-31 16:23:23 +02:00
tomFlowee 49a8a9ce34 Cleanup nice-address usage
A Payment object now has a user-typed address,
a formattedAddress which is a properly formatted cash-address
and last a 'niceAddress' which is the same cash-address but without the
chain prefix.

This cleans up the usage and removes some code from the GUI that did the
string manipulation there.
2023-05-31 15:47:14 +02:00
tomFlowee 752cc9b68a Respect amount of incoming payment request.
A payment request, for instance a QR code, which includes an amount to
be paid is expected to not change the to-be-paid amount, uses being
dropped
in the price editing UI is therefore a bit weird. Almost an
anti-pattern.

This honors that concept and when the price is included in the scanned
QR, we change the UI layout to removed the editing widgets and show
static display widgets instead.

This also adds a header menu item to edit the amount to be paid and
get back to the old UI.
Additionally, a new UI is added to show the address we are about to pay
to, likewise reachable from the header menu.
2023-05-31 15:20:11 +02:00
tomFlowee 00bcdfa796 Make GUI respond to entering a instapay limit. 2023-05-31 10:32:28 +02:00
tomFlowee 2724e2cd67 UX: make checkbox follow price indicator 2023-05-30 19:25:09 +02:00
tomFlowee 1e05c9f6ad Fix overlapping widgets issue 2023-05-30 19:19:57 +02:00
tomFlowee 8a9647551d Make BCH price popup show on bigger area
This now makes not just the bch balance but also the
fiat-balance clickable, all the way to the left border.
2023-05-29 12:19:39 +02:00
tomFlowee fc3b31b864 minor fixes 2023-05-26 08:31:36 +02:00
tomFlowee 0ef5d2b0fc Re-think the interaction of the ReceiveTab
This solves the UX issue that the touch-screen keyboard would
overlap on our main content and that we could actally not input
a price properly on mobile at all.
2023-05-25 23:37:41 +02:00
tomFlowee 0eca2b680c have a default width 2023-05-25 21:00:39 +02:00
tomFlowee 5c2581c592 Add PaymentBackend helper class
This makes the PriceInputWidget free to invoke.
2023-05-25 21:00:24 +02:00
tomFlowee 914e4a5d55 Also allow InstaPay config from send-tab 2023-05-19 16:29:36 +02:00
tomFlowee eb23c947fe Be nicer to touch-screens and increase hit area.
The actual touch area was exactly the checkbox, which is really not that
big an area for a finger to touch.
This assumes that the layout has 10 pixels between components and thus
we eat 5 above and 5 below this component to increase the touch-area to
the max we can.
2023-05-19 15:58:36 +02:00
tomFlowee 97a4b74bfa Include our font.
We ship our own font to not have to depend on the host system's
installed fonts for 'special' characters like arrows and stars.

This is a font forked from the Gnu-free font people, only since that one
is 2MB this is a very much stripped down version with just all the fun
stuff left.
2023-05-19 15:47:02 +02:00
tomFlowee 9ab4e63de0 Small fixlets. 2023-05-19 11:30:57 +02:00
tomFlowee 7806914fc3 Various small fixes and UX improvements. 2023-05-18 21:52:51 +02:00