We should not require the user to put it in a layout with spacing, that
will just create inconsistencies.
Instead make sure that the button itself is tall enough for easy aiming
on small screens.
This adds a lock to ensure that the app is not started twice, which
would be bad for data consistency.
The second version will just show a simple window stating it is already
running. While it would be nice to make it more advanced, I don't think
that is useful to spent time and code on.
The backend still used an int for the fiat price, this is now a qint64.
Additionally the BitcoinValue now optimistically (pessimistically?)
converts the input with the current price in order to avoid a second
order overflow.
This reflects that it is a full screen page and has no 'back' button.
We also remove lots of small hacks that have seens been made standard in
reusable components.
The popup component adds hidden margins and insets, which we have to
fight to not end up with arbitary positioning.
This fixes the positioning and sizes much better.
The quick receive does not appear when your default wallet is a single
address wallet because in that case the address that will be shown will
have history.
Transactions submitted that are older than an hour won't be used for the
PaymentRequest fulfillment. This is relevant when the user syncs the
wallet after being offline for a longer time.
Also ignore incoming transactions for a request when the request has no
price set. For those transactions we should really just have a generic
popup.
When Ubuntu released its 2024.04 release late April, they included
Qt 6.4 which was by then already old and out of support. For some
reason they did not include the Qt LTS 6.5 which at that point was
already out for a year.
So, people are stuck with a really old Qt that has been out of
support for a very long time already on ubuntu and derivatives
like mint.
(re) add a backwards compatible define to make stuff compile
on this old version of Qt.
This moves the creation of the portfolio to happen the moment we
finished loading. (wallets were loaded either way)
The networking is the part that now waits for the user to unlock before
it does anything.
The default now is a "small" one at the bottom that users will be able
to use with their thumbs. A common input way.
For fat-fingered people we keep the current full screen input widget,
easy to toggle by the button at the top which now is a 3-state and on
top of that gets rememebered between instantiations.