47a5d3218503294065acebaee1add5b7d52d3a81 gui(installer): make edit key modal scrollable (Michael Mallan)
Pull request description:
This is to fix#1402 following the suggestion in https://github.com/wizardsardine/liana/issues/1402#issuecomment-2448730840.
ACKs for top commit:
pythcoiner:
tACK [47a5d32](47a5d32185)
edouardparis:
ACK 47a5d3218503294065acebaee1add5b7d52d3a81
Tree-SHA512: 4bf84e041e4e2ae6cbb7645a75290912d975c7c7312e7779b95f855753dc8000ff6f377b13c85ed69cd68be721fde2998c6c1f3034b92b0dab03a07edc82af68
a105c495005ba715883a6e9a53fbdde93e7741ae gui(installer): add space at bottom of pages (Michael Mallan)
Pull request description:
This is to fix#1410, including for the mnemonic and descriptor backup steps.
The space height in all cases will be 70.0 when combined with the existing vertical spacing between elements.
ACKs for top commit:
pythcoiner:
ACK tested [a105c49](a105c49500)
edouardparis:
ACK a105c495005ba715883a6e9a53fbdde93e7741ae
Tree-SHA512: 5e9f27b80490e1eea0690750a52c650c7ea607c9c42a25cb0e96dab779d691e057a2629c00c772b0c5101d4054108eb8f33ea984b837026bb858824221aca71f
918909db235ff8a0886a9f74d7ac3b1caec83324 gui: include last poll for cache refresh interval (Michael Mallan)
c915970c7b00adbd27c0d8a20116d1bda57a8d2c gui(home): pass sync status directly (Michael Mallan)
92a4a4f8dcaa75bc7181767b1958e39c94e8ad3f gui(cache): store last poll at startup (Michael Mallan)
acf14c6d734fc238dc1f44a4b5bab1f3f6411c9b gui: refresh cache more often while syncing (Michael Mallan)
e419784e9f2da76e8e86c03c8773f0dcb2a883da gui: move sync status function to wallet module (Michael Mallan)
Pull request description:
This is to resolve#1414.
In the end, I felt it was simple enough to include commits that cover both parts of #1414 (the short-term change and the follow-up).
I start with the short-term change (setting the refresh interval ignoring the last poll logic) and then follow with commits that cover all syncing statuses.
I don't use as high a refresh frequency for a remote backend as for a local backend, but these values can be easily changed if required.
ACKs for top commit:
pythcoiner:
tACK [918909d](918909db23)
Tree-SHA512: 6b47f315b0d50b2898435247b288562413e0f0abf520747edc67166c66153f7432e65ae5b3337bba67c71ade7181110e5dbfbc58df3b8510bfb5d9eb29b2bb02
01f6d2b76985a92ec19ccd37a8e4005219b94563 gui: add support for tapminiscript on bitbox02 (pythcoiner)
Pull request description:
This PR is build on top of #1357, with few adds:
- get the version from bitbox device
- check the version for taproot support
- copy `tap_script_signs` & `tap_key_sig` if present in the pruned psbt after signature
Tested spending by internal key & taptree w/ differents setups
~~Note: this PR use `bitbox-tapminiscript` branch of `async-hwi`~~
ACKs for top commit:
edouardparis:
ACK 01f6d2b76985a92ec19ccd37a8e4005219b94563
Tree-SHA512: aa66a0ebe8553fd13dd5e279adaf1360cdce0d4ccb09f49181f20bc5e4c3c653c0ab056c35ac5cf6ccb3eeb696dcfd94463e6235d1cdb2063ecb503695ad4b99
Refresh the cache more often while the wallet has a syncing
status of some kind in order to detect sooner that this has
finished.
This does not cover syncing scenarios that require the first poll
to be detected since we don't currently store the required info
(the last poll at startup). This should be covered in a follow-up.
The primary keys shouldn't be editable from the recovery path in the
Multisig Savings template but only from the primary path. It could bring
to weird behaviors and corner cases.
1bc6248063c908219d4f1e343ca487c4f64d7843 gui: upgrade managed bitcoind version to 28.0 (Michael Mallan)
Pull request description:
This is to resolve#1372.
Hashes were taken from https://bitcoincore.org/bin/bitcoin-core-28.0/SHA256SUMS.
File names we use can be found here:
2d5991cb0c/gui/src/node/bitcoind.rs (L42-L60)
ACKs for top commit:
edouardparis:
utACK 1bc6248063c908219d4f1e343ca487c4f64d7843
Tree-SHA512: c6c5976c357164dc2f6e31f5af7981c41ef63197bfb1aac1f54ddb30dff423796fe23957e5a2c6014fcdabb64b91057a97b22d3c9e7ea33bcfa5ce47c912846a
If opening an existing wallet that uses a local backend, indicate
that it is checking for new transactions until the first poll
completes.
A remote backend is always synced after the initial scan.
If the user has imported a descriptor and is using bitcoind as
a local node, then they will need to perform a rescan in order
to see past transactions.
Treating the wallet as syncing in this case could mislead the
user that a rescan is being performed. Therefore, it's better
to keep the past behaviour here to avoid further confusion.
This is for convenience in case we need to know the node type
being used.
Although we expect there to always be a node type, it is kept as
`Option` to be consistent with the daemon config.
6f4eb79a5a45751a1c919565ea9c88f59fbda0ab gui: refresh cache more often while height is 0 (Michael Mallan)
a51110269c96e7a9d7c4143e0bd6f8cf27a703a3 gui(home): indicate that wallet is syncing (Michael Mallan)
b452966653da1f2d857dd5901972171aa9d1250c gui(home): track blockheight from cache (Michael Mallan)
1d1e735ae975bb73af5389090e1eee68c727c7ea ui: add loading spinner that types text (Michael Mallan)
3c46a7337c57ef646626d052a0ab23a7fa0ecb17 ui: add carousel loading spinner (Michael Mallan)
e4c1ab106d74ad193aa1ba2f5746ce598c4801e5 ui: render amount with chosen colors (Michael Mallan)
013feb3909ebed0a8850a51a7d61383f327b5d4d ui: refactor amount function (Michael Mallan)
Pull request description:
This is to resolve#1361.
The home page considers the wallet to be syncing if its height is 0. In this case, the balance will slowly blink and a "Syncing..." text will appear just below.
The home page will check the wallet's height upon each cache refresh, and will reload the home page once the syncing has completed so that the updated balance is displayed without the user needing to do anything.
Both the blinking balance and "Syncing..." text use a new `Carousel` widget that cycles through different child widgets at a specified rate.
EDIT: I've added an extra commit to address #1363 as that is also related to the wallet height and cache refresh.
ACKs for top commit:
edouardparis:
ACK 6f4eb79a5a45751a1c919565ea9c88f59fbda0ab
Tree-SHA512: 04214ccb1cf998ae6f7589f2c37335416a6d39b668269c4e07e30c8713e1a0e9e46257c60cea7b19ee6d6e35cbdccaf1122d25a66e6e7e905de51fce185f9180
The secondary button is light grey border and transparent
background that has border and text green on hover.
It brings consistency with item list selection that
has green border on hover.