aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfanquake <fanquake@gmail.com>2019-08-06 09:31:09 +0800
committerfanquake <fanquake@gmail.com>2019-08-06 09:39:26 +0800
commit31d98584f3c570961359c308619f5cf2e9178482 (patch)
tree2b59ec404a6c65be80edabcdc762f454eff69a1b
parent62117f9f363ea669c6cc9cebf81d55a9581cedb6 (diff)
parentfa5a4cd813c2f0225dcbc05cd16ae2d1c0d13234 (diff)
Merge #16497: gui: Generate bech32 addresses by default (take 2, fixup)
fa5a4cd813c2f0225dcbc05cd16ae2d1c0d13234 gui: Generate bech32 addresses by default (take 2, fixup) (MarcoFalke) Pull request description: This commit was missing from my previous pull request for some reason :thinking: : * gui: Generate bech32 addresses by default #15711 ACKs for top commit: jonasschnelli: Tested ACK fa5a4cd813c2f0225dcbc05cd16ae2d1c0d13234 promag: ACK fa5a4cd813c2f0225dcbc05cd16ae2d1c0d13234. fanquake: ACK fa5a4cd813c2f0225dcbc05cd16ae2d1c0d13234 Tree-SHA512: 4a38df929d7704bf08e50a2e814b2e6cd25c4165d040a84287045b44e32f4708750845520d64170ea58e41de3ca496da4625d3eb375f9528b21b364c22068a6b
-rw-r--r--src/interfaces/node.cpp1
-rw-r--r--src/interfaces/node.h3
-rw-r--r--src/qt/receivecoinsdialog.cpp13
3 files changed, 14 insertions, 3 deletions
diff --git a/src/interfaces/node.cpp b/src/interfaces/node.cpp
index fd2fb6531b..bcd226edd9 100644
--- a/src/interfaces/node.cpp
+++ b/src/interfaces/node.cpp
@@ -198,6 +198,7 @@ public:
return GuessVerificationProgress(Params().TxData(), tip);
}
bool isInitialBlockDownload() override { return ::ChainstateActive().IsInitialBlockDownload(); }
+ bool isAddressTypeSet() override { return !::gArgs.GetArg("-addresstype", "").empty(); }
bool getReindex() override { return ::fReindex; }
bool getImporting() override { return ::fImporting; }
void setNetworkActive(bool active) override
diff --git a/src/interfaces/node.h b/src/interfaces/node.h
index bb4b3e1fae..b93b52c5cc 100644
--- a/src/interfaces/node.h
+++ b/src/interfaces/node.h
@@ -150,6 +150,9 @@ public:
//! Is initial block download.
virtual bool isInitialBlockDownload() = 0;
+ //! Is -addresstype set.
+ virtual bool isAddressTypeSet() = 0;
+
//! Get reindex.
virtual bool getReindex() = 0;
diff --git a/src/qt/receivecoinsdialog.cpp b/src/qt/receivecoinsdialog.cpp
index c58717e21e..05157c2a4a 100644
--- a/src/qt/receivecoinsdialog.cpp
+++ b/src/qt/receivecoinsdialog.cpp
@@ -7,6 +7,7 @@
#include <qt/receivecoinsdialog.h>
#include <qt/forms/ui_receivecoinsdialog.h>
+#include <interfaces/node.h>
#include <qt/addresstablemodel.h>
#include <qt/optionsmodel.h>
#include <qt/platformstyle.h>
@@ -92,10 +93,16 @@ void ReceiveCoinsDialog::setModel(WalletModel *_model)
// Last 2 columns are set by the columnResizingFixer, when the table geometry is ready.
columnResizingFixer = new GUIUtil::TableViewLastColumnResizingFixer(tableView, AMOUNT_MINIMUM_COLUMN_WIDTH, DATE_COLUMN_WIDTH, this);
- if (model->wallet().getDefaultAddressType() == OutputType::BECH32) {
- ui->useLegacyAddress->setCheckState(Qt::Unchecked);
+ if (model->node().isAddressTypeSet()) {
+ // user explicitly set the type, use it
+ if (model->wallet().getDefaultAddressType() == OutputType::BECH32) {
+ ui->useLegacyAddress->setCheckState(Qt::Unchecked);
+ } else {
+ ui->useLegacyAddress->setCheckState(Qt::Checked);
+ }
} else {
- ui->useLegacyAddress->setCheckState(Qt::Checked);
+ // Always fall back to bech32 in the gui
+ ui->useLegacyAddress->setCheckState(Qt::Unchecked);
}
// Set the button to be enabled or disabled based on whether the wallet can give out new addresses.