aboutsummaryrefslogtreecommitdiff
path: root/src/qt/bitcoingui.cpp
diff options
context:
space:
mode:
authorHennadii Stepanov <32963518+hebasto@users.noreply.github.com>2021-08-26 15:50:43 +0300
committerHennadii Stepanov <32963518+hebasto@users.noreply.github.com>2021-08-26 15:56:18 +0300
commit774a4f517cf63df345e6a4852cc0b135b0a9ab76 (patch)
tree269212e3391edaeedbdcbfa290a474bfd9d9ec93 /src/qt/bitcoingui.cpp
parent7740ebcb023089d03cd2373da16305a4e501cfad (diff)
parentb8aa84b1a116599a6dd3b9ddb4e6c178a6688b1b (diff)
Merge bitcoin-core/gui#403: refactor: Make paths to update Encryption and HD wallet statuses simpler
b8aa84b1a116599a6dd3b9ddb4e6c178a6688b1b qt, refactor: Replace `if` check with `assert` (Hennadii Stepanov) fcdc8b0fcb9dc81b76289abc57a4203671f748eb qt, refactor: Drop redundant signalling in WalletView::setWalletModel (Hennadii Stepanov) 37dcf161d3dd1f7862a67bec1e8f2887cbd6de90 qt, refactor: Emit WalletView::encryptionStatusChanged signal directly (Hennadii Stepanov) 7d0d4c04903cafade32be3bf2bf1cad3f33c6c03 qt: Add WalletFrame::currentWalletSet signal (Hennadii Stepanov) Pull request description: This PR makes signal-slot paths to reach `setHDStatus` and `setEncryptionStatus` functions shorter and easier to reason about them. Required to simplify #398 (see https://github.com/bitcoin-core/gui/pull/398#discussion_r686094883). --- **Note for reviewers.** Please verify that "Encrypt Wallet..." menu item, and the following icons ![DeepinScreenshot_select-area_20210811202120](https://user-images.githubusercontent.com/32963518/129074601-13fa998a-ac47-4ad2-be00-ba400b12c18a.png) and updated properly in each and every possible scenario. ACKs for top commit: jarolrod: tACK b8aa84b1a116599a6dd3b9ddb4e6c178a6688b1b Talkless: Code review ACK b8aa84b1a116599a6dd3b9ddb4e6c178a6688b1b. Did build on Debian Sid with Qt 5.15.2 but no actual testing performed. ryanofsky: Code review ACK b8aa84b1a116599a6dd3b9ddb4e6c178a6688b1b. Only change since last review was rebase Tree-SHA512: 275737cdba02baff71049df41bc24089e916f96326dd2dea26ec607c7949cb3aae368eeabbe3ad5a0a27651503a1d65536873726de854c5f6af259bcc29727e7
Diffstat (limited to 'src/qt/bitcoingui.cpp')
-rw-r--r--src/qt/bitcoingui.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/qt/bitcoingui.cpp b/src/qt/bitcoingui.cpp
index a92675fb14..55eba60bcd 100644
--- a/src/qt/bitcoingui.cpp
+++ b/src/qt/bitcoingui.cpp
@@ -113,6 +113,7 @@ BitcoinGUI::BitcoinGUI(interfaces::Node& node, const PlatformStyle *_platformSty
connect(walletFrame, &WalletFrame::message, [this](const QString& title, const QString& message, unsigned int style) {
this->message(title, message, style);
});
+ connect(walletFrame, &WalletFrame::currentWalletSet, [this] { updateWalletStatus(); });
setCentralWidget(walletFrame);
} else
#endif // ENABLE_WALLET
@@ -694,7 +695,6 @@ void BitcoinGUI::addWallet(WalletModel* walletModel)
});
connect(wallet_view, &WalletView::encryptionStatusChanged, this, &BitcoinGUI::updateWalletStatus);
connect(wallet_view, &WalletView::incomingTransaction, this, &BitcoinGUI::incomingTransaction);
- connect(wallet_view, &WalletView::hdEnabledStatusChanged, this, &BitcoinGUI::updateWalletStatus);
connect(this, &BitcoinGUI::setPrivacy, wallet_view, &WalletView::setPrivacy);
wallet_view->setPrivacy(isPrivacyModeActivated());
const QString display_name = walletModel->getDisplayName();
@@ -1340,9 +1340,8 @@ void BitcoinGUI::setEncryptionStatus(int status)
void BitcoinGUI::updateWalletStatus()
{
- if (!walletFrame) {
- return;
- }
+ assert(walletFrame);
+
WalletView * const walletView = walletFrame->currentWalletView();
if (!walletView) {
return;