When we start up we use the last known price information and also fetch
new data.
When the user shows the price details popup before the fetch has
completed, they may be mislead into thinking that they are looking at
current data while they are not.
So this shows a bouncy while we are fetching.
The popup showing details of a certain list-item had the down-side that
the list item we selected was made darker with the rest of the screen,
making it harder to understand the whole info.
This change repeats the clicked item inside the popup in a way that
makes it immediately clear which transaction we are showing details of.
This applies the knowledge learned from mobile to desktop too.
Also set the initially selected import year to 2023 and avoid
long imports for most people.
We use the same header-heights lookup table to show the actual month to
the user on resolve.
The resolve is the fetch of first-use of an address or seed, this
returns a blockheight from elecrum servers only and that isn't very
user-friendly. As such this now fills the comboboxes with the proper
month/year for better understanding.
This makes the language simpler and makes clear that the password field
is related to the import. Second, the name-field is now moved closer to
the big 'start' button and has a more obvious title.
This is the import page, it will certainly be possible for a
user to import a wallet that is older than the headers on their
device. In that case using the headers to resolve the height can't
work.
Circular dependency: Need headers to know which headers to download...
So, we hardcode the historical blockheights here for each month that
the user can select.
Notice that the dates are the first of each month, at the UTC-16
time-line.
The ImportWalletPage now loads the QML provided by the module,
exposed via the metadata of modules.
The module gets just a blockheight property and then will do
"its thing".
This will either instantly close when there is nothing to do
and continue instantly to the actual import.
Or the module will check the server, initiate download and when
all is setup and done THEN close the popup and continue with
the actual import.
Seems that the problem we saw on Android is also present on
Linux and Wayland.
A lot of components no longer use the palette which makes it
not possible to use them as-is with our light/dark theme feature.
This changes the many components to the Flowee specific ones
where we already solved this for the Android UI.
This follows the re-designed the 'import wallet' to
now have the same design and featureset from mobile also on
desktop.
The 'new-wallet' pages in general have also been changed as to
avoid wasting most of the space on the advertisment style
content and aim to have a vertical design so we avoid forcing
people having to scroll.
Make the selector more compact, Instead of showing empty space, make
the size just fit the actual content.
This makes it more usable on mobile layouts.
Also improve the UX of the NewAccount page on mobile, less implicit text
and more explicit intention based titles.
Last, make the title-label's font scale to fit the size it is given.
This completely re-designed the 'import wallet' screens on
mobile.
We use the various new features available now, most importantly the
ability to detect derivation and start-height from an electrum
indexing server.
Fix ComboBox general colors to fit in the theme.
This also adds enabled usage, so the enabled comboboxes fall in
line with the textfield color settings, same for disabled ones.
We also added a focus indicator.
This moves the component out to its own file while fixing some UX
issues.
* It is now always visible for (UI) discovery purposes.
* When we paste when there is no matching text we show negative
feedback.
The isSingleAccount property controls if the UI is simple or more
complex.
The single account setup doesn't show you that you have any concept on
differnt accounts at all. No account chooser etc.
On Desktop, however, we choose to always show the archived wallets
anyway. Even though its not in-your-face. Which makes the behavior
between those UIs slightly different.
The addition of the limitedArchiveView property is meant to
facilitate that.
The page-up/page-down now actually scroll a significant chunk of a
page and not an annoyingly small distance.
As we scroll, we make it a point to show the ScrollBar-thumb in order
to give the user feedback on where in the list they are.