HomePhabricator

[Cashtab] Lock UI and disable keyboard input while user switches wallets

Description

[Cashtab] Lock UI and disable keyboard input while user switches wallets

Summary:
Depends on D17551

If the user rapidly toggles between wallets before they have finished loading, we can queue up dozens of tasks and the app can start constantly changing wallets

If we change wallets, wait for the wallet to load before allowing another wallet change or use of this stored wallet.

Test Plan:
npm test to confirm no breaking existing behavior

deployed at test site: https://cashtab-local-dev.netlify.app/

change wallets as fast as you can on the test site

  • cashtab.com should still load fast, as we do not spinner while the stored wallet loads
  • changing wallets should lock the UI and take a few seconds
  • keyboard arrows will not select a new wallet while a wallet is loading

Reviewers: #bitcoin_abc, emack

Reviewed By: #bitcoin_abc, emack

Differential Revision: https://reviews.bitcoinabc.org/D17552

Details

Provenance
bytesofmanAuthored on Fri, Jan 17, 03:14
bytesofmanPushed on Fri, Jan 17, 21:38
Reviewer
Restricted Project
Differential Revision
D17552: [Cashtab] Lock UI and disable keyboard input while user switches wallets
Parents
rABC70d070d2a9c4: [Cashtab] Do not double call updateCashtabState on wallet change
Branches
Unknown
Tags
Unknown