In the case where there is no specific input needed, because the amounts
were all specified, we still need to set the focus to the page because
otherwise 'back' / 'esc' don't behave correctly.
Pressing 'Escape' or (android) back button is now more logical.
Closing the menu is new, going back to the 'main' tab as well.
This also fixes some odd behavior when using the back button while the
camera is active.
And last, when there is nothing more to back out of, on Android we end
up closing the application. This is what people expect on that platform.
To swipe from the left edge now is limited to only 50 'pixels'
instead of half the width.
Additionally, don't allow interaction while the app pin-screen
is showing.
This calls Java code on Android through the Qt JNI bridge
in order to learn the phone-wide setting of dark-theme.
For new installs this will now follow the phone setting by default.
Add GuiSettings: dark mode option.
The flowee lib added support for various blockheader improvements.
An important one is the ability to start from a checkpoint and thus
lower the requirements at the cost of a slightly lower security.
This adds support for that.
The local part is that we stop shipping the 'info' file (some 25MB
for the full chain) in the APK / deb files, instead buiding it on first
start.
In addition:
- Made it work with latest commit to Flowee/thehub/#5.
- Works better now when decrypting the wallet (accountInfo.isElectrum property
should not be CONSTANT but instead notify on change)
- Made the actual wallet seed phrase type get saved to the wallet rather
than a bool. This type comes from enum HDMasterKey::MnemonicType in
thehub libs.
This is the format used by (older) Electron Cash wallets. It may be
useful to users wishing to use their older EC wallets with Flowee Pay.
Highlight of changes:
- Import wallet UI now auto-detects whether it's Electrum or BIP39. Note
that in some cases a valid BIP39 seed is also a valid Electrum seed.
The user has a UI element checkbox for "forcing" Electrum
interpretation in such cases.
- Electrum seed phrases always use derivation path "m/" so this is
forced on the user as the only path available in the Electrum case.
- Wallet file format has a new tag to indicate whether the seed phrase
is electrum or not. Only present in the electrum case, otherwise it's
omitted from the serialized data.
Just some nits but here is what the compiler didn't like:
- Apparently Qt's `qAsConst` is marked as deprecated (at least in Qt
6.6.0), so they recommend one uses `std::as_const`
- Compiler feels happier with `#ifdef` rather than `#if` for
`TARGET_OS_Android` in the not-defined case.
The CPP now does more of the (heavy) lifting and the UI layer can
ignore
most of the details with regards to there being digits behind the
separator for fiat at all.
The internal change is that the fiat based values are always processed
in cents, even if the cents are not displayed. This solves incorrect
display and generally removes special cases.
One surprise was that the main usecase of pasting is one where the user
activates another app to go and copy data in order to come back to paste
it.
And the Qt clipboard didn't manage to get any notification of clipboard
changes. Even copying data on becoming active had no effect.
So now I just show the paste optimistically when the user comes back
from another screen, assuming the main reason for that was to copy.