We introduced for secret keys the signature-type field, which is required
to avoid signing with one key as both Schnorr and ecdsa as
that can cause leakage making recovering the private key much easier.
So, we now store this data but old wallets didn't fetch that from
the incoming transactions. So this conversion fetches the data from the
transactions (which are on the device) and stores the sigtype with the
keys.
Each account has its own booleans for the model filter, but that makes no
sense in the UX as the checkbox changes as the user switches account.
Instead, copy the UI checkbox value to the new model we get.
The bloom filter didn't include all created keys and thus we didn't send
the bloom in some cases.
Now we keep track of exactly which keys were sent and we re-send a bloom
filter if half of those have been used in order to not miss out on any
transactions.
As transactions are found on the blockchain we remember the signature
type used in order to avoid one private key to be used for both types of
signatures, which can cause compromised keys.
This adds the feature that we show a "last receive" field on a wallet,
and we also change the date format to have "yesterday" style dates
for recent ones.
On send we require a 'prepare' button press. This is specific to a
portfolio and so when we switch portfolio we now make more clear that
the data is not valid by making it less visible.
Separate updating ts files and creating qm files out of them.
This solves the annoyance that any change in the QML files generates
changes in our source-tree.
Updating the translations now requires calling an explicit `make i18n`
This changes the default generated wallet to be a HD wallet.
We also add a helper class to configure newly created wallets from QML.
This finishes up the new wallet panel to have all the visible features
actually do something.
The checkbox we use is a slider-button, to increase usability we now
make the background indicate that the slider is On, so people have extra
visual indicators to match "right equals enabled".