Instead of pre-allocation, this moves it to just before we actually
broadcast.
This solves a possible failure of detecting target funds in case the
number of transactions is larger than the gap and the user sends only
one or two of the later once instead of all.
This makes the widgets more re-usable by following the general
design of Qt components with porperties like implicitWidth being
implemented as expected.
When a transaction has been created by the plugin, this stores it also
on our UI classes and forwards the broadcast status for the front end
to use in some animation.
Following the moving of this to the 'explore' tab as "find more"
this is more a detailed listing of all modules, and as a result it
makes sense to add an 'open' button.
This avoids people being forced to enable a feature they only want
to use once.
Following this new UX the 'ON' ribbon loses its meaning, you can
use a module that is not on.
I mean, yes, the fancy enums help readability, but the fancy enums
actually pull in a rather large dependency that adds hundreds of
kilobytes to the deployment. Then just ints don't look so bad
anymore, do they?
This section type means that the module will have it's icon shown in
the 'Explore' tab always, it can not be disabled by users and as such
it just becomes an overflow of the main app avoiding worry about a
module not being found.
This moves the decision if it is importing out of the wallet and we stop
using a broken heuristic.
Also cleanup the API usage of the hd masterkey format in the wallet
header.
This is probably a good first milestone, the UX is pretty decent
and the wanted functionality is there.
Various todo's are still there which mostly of the cleanup type.
The toggle on some devices takes a second or 2, as such it may be
tempting to press multiple times waiting for the change.
This hardcodes a 3 second wait to increase the UX a little.
This moves the heuristic to exist only once and avoids duplicating it.
Additionally this increases the checks accuracy.
Last, the 'moved' price in desktop now is white to indicate it is
not a balance change.
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.
Continuing the 'rework send page' series.
This moves stuff that had no business being on the "Send" page to
live on a new tab instead. Prime example was the 'sweep' module
that creates a transaction we send, but to ourselves. So it's far
fetched that it fits in 'send'.
This reverts commit 9f69241bbb.
Reason for revert is that instead of renaming the send, we're now
creating a new tab instead. So we'll keep "Send" and add a new one
as well.
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.