ui: Support wallets loaded dynamically #13097

pull promag wants to merge 3 commits into bitcoin:master from promag:2018-04-ui-wallet-loaded changing 3 files +35 −17
  1. promag commented at 5:31 PM on April 26, 2018: member

    Add support in the UI for wallets loaded dynamically.

  2. fanquake added the label Wallet on Apr 26, 2018
  3. promag force-pushed on Apr 26, 2018
  4. fanquake added the label GUI on Apr 26, 2018
  5. promag commented at 5:35 PM on April 26, 2018: member

    @ryanofsky had to convert interfaces::Wallet to shared pointer because of QueuedConnection. Do you have an alternative? Like instancing WalletModel on RPC thread and then make that the slot argument?

  6. promag force-pushed on Apr 26, 2018
  7. promag commented at 6:22 PM on April 26, 2018: member

    Previous version in promag/2018-04-ui-wallet-loaded.1, now WalletModel* is the argument in the queued connection.

  8. promag commented at 6:23 PM on April 26, 2018: member

    @jnewbery mind testing this?

  9. promag force-pushed on Apr 26, 2018
  10. promag force-pushed on Apr 26, 2018
  11. jnewbery commented at 9:26 PM on April 26, 2018: member

    @jnewbery mind testing this?

    Will do! (next week)

  12. promag commented at 9:27 PM on April 26, 2018: member

    In order to test, suppose there are wallets w1 and w2:

    • launch bitcoin-qt -regtest -nowallet
    • open console and run loadwallet w1 (should show wallet)
    • run loadwallet w2 (should show multi-wallet selector)
  13. promag cross-referenced this on Apr 26, 2018 from issue gui: Add dynamic wallets support by promag
  14. in src/qt/bitcoin.cpp:254 in e15724a074 outdated
     250 | @@ -250,7 +251,8 @@ public Q_SLOTS:
     251 |      QTimer *pollShutdownTimer;
     252 |  #ifdef ENABLE_WALLET
     253 |      PaymentServer* paymentServer;
     254 | -    std::vector<WalletModel*> m_wallet_models;
     255 | +    std::list<WalletModel*> m_wallet_models;
    


    promag commented at 11:04 PM on April 26, 2018:

    Revert to vector.

  15. in src/qt/bitcoin.cpp:460 in e15724a074 outdated
     455 | +    window->addWallet(walletModel);
     456 | +    if (m_wallet_models.empty()) {
     457 | +        window->setCurrentWallet(walletModel->getWalletName());
     458 | +    }
     459 | +
     460 | +    connect(walletModel, SIGNAL(coinsSent(WalletModel*,SendCoinsRecipient,QByteArray)),
    


    promag commented at 11:05 PM on April 26, 2018:

    Improve format.

  16. promag force-pushed on Apr 27, 2018
  17. jnewbery commented at 4:00 PM on April 30, 2018: member

    Please update title to indicate that this PR is for GUI support for wallets loaded at runtime.

    Please rebase on #10740 (which I just rebased on master) to pick up the wallet: Make vpwallets usage thread safe commit

  18. promag renamed this:
    Support wallets loaded dynamically
    ui: Support wallets loaded dynamically
    on Apr 30, 2018
  19. promag force-pushed on Apr 30, 2018
  20. promag commented at 4:06 PM on April 30, 2018: member

    @jnewbery done.

  21. jnewbery cross-referenced this on Apr 30, 2018 from issue Dynamic wallet load / create / unload by jnewbery
  22. jnewbery commented at 6:08 PM on April 30, 2018: member

    Tested ACK c9048b9213f7e9dc9b8da9b06c2caccd27f8c3cc

  23. jnewbery commented at 8:56 PM on April 30, 2018: member

    This (and #13100) need to update doc/release-notes-pr10740.md to state that dynamic wallet loading is supported in the GUI.

  24. promag force-pushed on May 1, 2018
  25. promag commented at 9:14 PM on May 1, 2018: member

    @jnewbery done (here).

  26. meshcollider commented at 9:13 AM on May 2, 2018: contributor

    Concept ACK

  27. laanwj added this to the "Blockers" column in a project

  28. jnewbery added this to the "In progress" column in a project

  29. jnewbery commented at 9:53 PM on May 4, 2018: member

    @promag - this requires a rebase for one of my commits. I've rebased #10740. I suggest you reset to that branch and then cherrypick your commits.

  30. promag force-pushed on May 4, 2018
  31. promag commented at 10:01 PM on May 4, 2018: member

    @jnewbery rebased.

  32. ui: Remove unnecessary variable fFirstWallet 1c8fe0bf90
  33. ui: Support wallets loaded dynamically 0e674ba557
  34. promag force-pushed on May 16, 2018
  35. promag commented at 7:49 PM on May 16, 2018: member

    Rebased.

  36. mess110 commented at 10:16 PM on May 16, 2018: contributor

    Tested ACK 0e674ba

  37. jnewbery commented at 6:57 PM on May 17, 2018: member

    Tested ACK 0e674ba5572275bcc1eb8f91c6292f871925f965

  38. jonasschnelli commented at 7:51 PM on May 17, 2018: contributor

    Started in regtest with only the "default" wallet loaded (single wallet mode), then, loaded another wallet. I could see the 2nd wallet, but the initial "default" wallet did had no name in the dropdown.

  39. jonasschnelli commented at 7:59 PM on May 17, 2018: contributor

    If you load a wallet when you are in the "Receive"-Tab (or any other tab), select the wallet via the Dropdown the "Overview"-view will appear instead of the "Receive"-View.

    <img width="1000" alt="bildschirmfoto 2018-05-17 um 21 57 58" src="https://user-images.githubusercontent.com/178464/40200804-87610de4-5a1d-11e8-9c39-0072af5a9cf0.png">

  40. jonasschnelli commented at 8:01 PM on May 17, 2018: contributor

    utACK 0e674ba5572275bcc1eb8f91c6292f871925f965 though I would prefer if the glitches would be fixed before merge

  41. jnewbery commented at 8:13 PM on May 17, 2018: member

    the initial "default" wallet did had no name in the dropdown.

    Yes - this is a result of #11687 (review) , and is also visible in the listwallets and getwalletinfo RPC calls.

    This PR does introduce that behaviour, but does make it more visible when loading a second wallet.

  42. promag commented at 11:27 PM on May 17, 2018: member

    @jonasschnelli launching with bitcoin-qt -regtest -wallet -wallet=w1 also adds an empty item to the checkbox.

  43. fixup! ui: Support wallets loaded dynamically 2e75134719
  44. promag commented at 11:48 PM on May 17, 2018: member

    @jonasschnelli care to test again? Will squash after that.

  45. jonasschnelli commented at 8:10 AM on May 18, 2018: contributor

    Tested ACK 2e751347190049ac1b7fb8378db004956700aaa1

  46. jonasschnelli merged this on May 18, 2018
  47. jonasschnelli closed this on May 18, 2018

  48. jonasschnelli referenced this in commit e54550303b on May 18, 2018
  49. laanwj removed this from the "Blockers" column in a project

  50. ryanofsky cross-referenced this on May 18, 2018 from issue Add BitcoinApplication & RPCConsole tests by ryanofsky
  51. promag deleted the branch on May 20, 2018
  52. Bushstar cross-referenced this on May 21, 2018 from issue commits from bitcoin/master by Bushstar
  53. fanquake moved this from the "In progress" to the "Done" column in a project

  54. ken2812221 commented at 3:41 PM on June 19, 2018: contributor

    default default

    If wallet failed to load because of pruned mode, the dropdown menu shows the wallet.

  55. jonasschnelli cross-referenced this on Jun 19, 2018 from issue Qt: load wallet in UI after possible init aborts by jonasschnelli
  56. MarcoFalke referenced this in commit 6579d80572 on Jun 20, 2018
  57. jasonbcox referenced this in commit 482ae43a56 on Oct 25, 2019
  58. jasonbcox referenced this in commit 962952f31a on Oct 25, 2019
  59. PastaPastaPasta cross-referenced this on Jul 15, 2020 from issue Backport 12610 + PrivateSend multiwallet support. by PastaPastaPasta
  60. PastaPastaPasta referenced this in commit 40964a51cf on Dec 16, 2020
  61. PastaPastaPasta referenced this in commit 5d483106f8 on Dec 16, 2020
  62. PastaPastaPasta referenced this in commit b49405bcd9 on Dec 18, 2020
  63. PastaPastaPasta referenced this in commit ce5b06ed66 on Dec 18, 2020
  64. xdustinface referenced this in commit a34ac73dd2 on Apr 4, 2021
  65. xdustinface referenced this in commit af40021c9f on Apr 4, 2021
  66. xdustinface referenced this in commit 713e241b6f on Apr 4, 2021
  67. xdustinface referenced this in commit d84ee328ff on Apr 4, 2021
  68. xdustinface referenced this in commit 773e39e1e5 on Apr 5, 2021
  69. xdustinface referenced this in commit a8454e22b0 on Apr 13, 2021
  70. bitcoin locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-05-19 06:54 UTC