Commit Graph

2106 Commits

Author SHA1 Message Date
tomFlowee a81267153f Move placeholder text to live elsewhere
On Android the placeholder text is very unfortunately positioned that
most people will consider a bug.
So we stop using that and instead put the text just above the actual
widget, fading the text when the user starts typing.

As this is on mobile, we also add a blinking fake cursor in the text
field to make it super clear what the intention there is.
The alternative would be to give focus to the field and have the real
blinking cursor, but that would open the virtual keyboard and hide the
big close button.
So fake blinking cursor it is.
2025-04-18 18:47:41 +02:00
tomFlowee 1ab3607900 Make notification manager aware of being visible
Notifications should have the opportunity to skip the OS layer and
simply be shown in-app instead in case the application has the users
attention anyway.

While knowing a notification should be sent to the system tray
otherwise.
2025-04-17 20:30:53 +02:00
tomFlowee e96a9fe129 Fix sometimes not showing the right text
When a new transaction is sent and edited directly in the backend
we expect that the item is re-created and thus the on-initial-
construction method to be called.
But, QML caches and thus our smart solution doesn' work.
2025-04-17 19:25:51 +02:00
tomFlowee 337fb4d6e0 Fixlet for testnet4 2025-04-17 18:08:21 +02:00
tomFlowee 42608e8b00 Improve the wallet selection widget in wallet2wallet
This shows a selector with only relevant wallet choices and no unneeded
details.
2025-04-17 17:54:12 +02:00
tomFlowee 664e38c705 Use more local variables.
This avoids the linter complaint of having defined the same variable
twice.
2025.04.0
2025-04-15 12:50:38 +02:00
tomFlowee 50b4ba57aa Make finding electron servers more agressive.
This moves the fetching (by dns) of the servers to the launch of Pay
instead of at the start of the module.

This periodically removes punishment scores in order to reassess remotes
and have long health guarentee.

This also works harder to find any servers even if all have a higher
punishment somehow.
2025-04-13 13:00:03 +02:00
tomFlowee b450d613bc New version 2025-04-08 13:01:26 +02:00
tomFlowee fab99d8390 Update German translations from Crowdin 2025-04-08 13:00:08 +02:00
tomFlowee dffcda40d8 Use a serious name 2025-04-08 12:17:21 +02:00
tomFlowee 18b446d6e0 Don't request permissions unless needed 2025-04-08 12:15:56 +02:00
tomFlowee 58f2f8dd18 not a foreground service afterall 2025-04-08 12:13:18 +02:00
tomFlowee fc9f6f2658 Fix java string compare
Probably the oldest gotcha on Java, strings can not be compared with
the == sign.
It's been several decades, so I have a bit of an excuse ;-)
2025-04-08 12:00:05 +02:00
tomFlowee 3090b74e4f Update amountToString to remove the stringBuilder
This cleans up the code even more, unifying the different cases
into one simple approach.

Added a unit test to verify the result.
2025-04-07 20:59:40 +02:00
tomFlowee b0c4545b09 Improve typing/pasting of seedphrase
This adds the ability to paste an almost correct seed phrase, for
instance when the last word is cut off.

We also provide a new UI to propose words while typing the seed,
allowing the user to tap on the words instead of having to finish typing
them.
2025-04-07 15:35:44 +02:00
tomFlowee 10fac24f74 Rewrite FloweePay::amountToString() to add groups.
The group separtors (aka thousand-separtor) as used by the system locale
are used to format the string now, and we upgraded this to use UTF16 in
order to avoid problems when they are not ascii.
2025-04-06 16:05:13 +02:00
tomFlowee db0ca5a779 Make the fiat-price show question mark if unknown. 2025-04-06 13:15:25 +02:00
tomFlowee 3f7cdc7dac Add onBoot Android notification
The background timer stops when the device reboots, as such we
need to re-start the periodic service timer at device boot.
2025-04-06 12:55:26 +02:00
tomFlowee 504cb7fe9b Convert this one too 2025-04-02 11:27:25 +02:00
tomFlowee 5037cc7f2c Properly initialize the slider value
Do the conversion from the backend in hours and set that on the slider
at construction of this screen.
2025-04-02 10:50:58 +02:00
tomFlowee 2278f693a6 Delay checks of onAppShown until unlocked
This delays checks like being online until after the user has typed the
pincode should the app be locked.
2025-04-01 23:01:27 +02:00
tomFlowee 9a8809fc70 Improve the background-running Android stuff
After setting, check if it was approved by the user, and if not
unset the checkbox again.

Bugfix:
On some Android implementations, setting this value opens a screen
even if the value is already set, while on many others that is a no-op
as you'd expect.
So for those phones we check first before we set.
2025-04-01 10:50:34 +02:00
tomFlowee 69e390ac6c Add support for pasting a bip70 style url 2025-03-25 14:41:46 +01:00
tomFlowee a8aa8dd2e2 remove unused code 2025-03-25 12:52:52 +01:00
tomFlowee 8047fbbadb Add auto-locking feature
The application and wallets will re-lock after 10 minutes of not using
them.
2025-03-24 20:09:07 +01:00
tomFlowee ecc4272745 Rename file to not be a dummy anymore.
As we actually add code, it makes sense to name it 'basic' instead
of dummy
2025-03-24 13:35:47 +01:00
tomFlowee 11ff1c8d87 Avoid calling price->start() twice on startup 2025-03-24 13:33:22 +01:00
tomFlowee 442ebaf8a7 Fix broken connection between pages
This makes starting the app with an intent work again.
2025-03-20 09:54:37 +01:00
tomFlowee a03bcf91af Allow two Pays running on diff networks.
Make the lock file have a network specific. Testnet/Mainnet.
2025-03-16 23:06:52 +01:00
tomFlowee 3bef7f4375 Give text more space 2025-03-16 22:59:21 +01:00
tomFlowee 8040db971a When a wallet is unlocked, show its receive QR 2025-03-16 22:55:30 +01:00
tomFlowee f20da27502 Remove fiat entry if showing on testnet
Also fix positioning of the hamburger menu
2025-03-16 22:44:07 +01:00
tomFlowee 78b11368bc Don't reserve space for fiat in testnet 2025-03-16 22:20:32 +01:00
tomFlowee 872e37b572 Make notes properties more declarative
This changes the notes property to be only set by the user of the
BroadcastFeedback.qml, and not from inside anymore which could break the
property binding causing strange things to happen.
2025-03-16 22:14:20 +01:00
tomFlowee a69a2a2096 Set the statusbar text to be light on Android 2025-03-13 21:22:13 +01:00
tomFlowee 539381ce21 Make Camera work the first time again
This removes the Qt middle-man for requesting the camera permissions
and we just code this in our own Java class.

This solves the issue we observed where after the approval of the
user we didn't actually manage to start the camera on some phones.
2025.03.2
2025-03-13 15:55:05 +01:00
tomFlowee 94983670a2 Remove commented out code 2025-03-13 15:55:05 +01:00
tomFlowee 651cf98332 Add a space after the prefix here 2025-03-12 21:04:07 +01:00
tomFlowee f8e678bc9b Specifically specify some currencies 2025-03-12 19:05:06 +01:00
tomFlowee e9fc0c1551 Re-enable the powermanagement feature for Android
This avoids using the Qt intermediate and just directly uses
the Android side, including some extra checks like "screen off".

Rework the various methods in a class.

This makes the various android support features be less hacky and instead
are based on a single class with Qt signals and slots.

We also remove the ping feature for checking online state, since Android
seems to throw a random exception (calling virtual method on null pointer
java.lang.String.size) somewhere in the OS libs when you call it the
second time.

This also implements the AIRPLANE_MODE_CHANGED listener to instantly turn
off internet the moment the user enables flight mode.
2025-03-11 23:25:24 +01:00
tomFlowee 66baeab106 Add check to avoid losing data. 2025-03-11 23:25:24 +01:00
tomFlowee 99adaa0a92 Lets start a new version 2025-03-10 23:46:35 +01:00
tomFlowee 890fb9e54e Move menu button and have a subtle gradient 2025-03-09 23:18:50 +01:00
tomFlowee 0ebc04a054 Add titlebar color setting on Android 2025-03-09 21:42:24 +01:00
tomFlowee fa7418d39d Try adding a rounded corner 2025-03-09 17:30:42 +01:00
tomFlowee 3f6cab3f81 Disable powermanagement feature for now.
The power management turns off the network layer 90 seconds after
the application stops being in the foreground.
At least, that is what it is programmed to do. Unfortunately the
signals we listen to are not reliable across devices and many users
are reporting that this is triggered 90 seconds after start.

For now, turn off the saving feature in order to make sure that
the app operates normally for normal people.
2025.03.1
2025-03-09 17:30:42 +01:00
tomFlowee b5936d3ca0 New version 2025-03-09 16:16:19 +01:00
tomFlowee 44063cde9d Stop linking to Boost::chrono 2025-03-08 17:06:00 +01:00
tomFlowee 8b9cd5282e Update the button text appropriately
When the selected account or currency changes, make the text
update to reflect the actual action of pressing this button.
2025.03.0
2025-03-08 17:06:00 +01:00
tomFlowee c21481c96f Give bottom more space 2025-03-08 11:32:50 +01:00