Merge #15711: gui: Generate bech32 addresses by default

faf62d9415 gui: Generate bech32 addresses by default (MarcoFalke)

Pull request description:

  Most services support bech32 addresses now, so generating legacy addresses by default seems overly cautious. bech32 addresses are more robust and user friendly in multiple ways.

ACKs for commit faf62d:
  promag:
    utACK faf62d9, maybe add a release note "checkbox changed, but the behavior/outcome remains the same".
  laanwj:
    utACK faf62d9415, don't think a release note is needed for this specifically, though a general release note on switching to bech32 by default would make sense
  fanquake:
    tACK faf62d9
  Empact:
    utACK faf62d9415

Tree-SHA512: a03e6ccf1e5476fe800941992c531664830cec0644984d8bce97c8d8f5d6d9abd528ab979892368cd195e7c8b9083d6b8dfd36a7cb172aa9dbeaa01a948e30e1
This commit is contained in:
MarcoFalke 2019-04-08 10:21:41 -04:00
commit 414d8461fd
No known key found for this signature in database
GPG key ID: D2EA4850E7528B25
2 changed files with 7 additions and 7 deletions

View file

@ -189,7 +189,7 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QCheckBox" name="useBech32"> <widget class="QCheckBox" name="useLegacyAddress">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Fixed"> <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
<horstretch>0</horstretch> <horstretch>0</horstretch>
@ -206,10 +206,10 @@
<enum>Qt::StrongFocus</enum> <enum>Qt::StrongFocus</enum>
</property> </property>
<property name="toolTip"> <property name="toolTip">
<string>Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When unchecked, an address compatible with older wallets will be created instead.</string> <string>Native segwit addresses (aka Bech32 or BIP-173) reduce your transaction fees later on and offer better protection against typos, but old wallets don't support them. When checked, an address compatible with older wallets will be created instead.</string>
</property> </property>
<property name="text"> <property name="text">
<string>Generate native segwit (Bech32) address</string> <string>Generate legacy address</string>
</property> </property>
</widget> </widget>
</item> </item>
@ -360,7 +360,7 @@
<tabstops> <tabstops>
<tabstop>reqLabel</tabstop> <tabstop>reqLabel</tabstop>
<tabstop>reqAmount</tabstop> <tabstop>reqAmount</tabstop>
<tabstop>useBech32</tabstop> <tabstop>useLegacyAddress</tabstop>
<tabstop>reqMessage</tabstop> <tabstop>reqMessage</tabstop>
<tabstop>receiveButton</tabstop> <tabstop>receiveButton</tabstop>
<tabstop>clearButton</tabstop> <tabstop>clearButton</tabstop>

View file

@ -95,9 +95,9 @@ void ReceiveCoinsDialog::setModel(WalletModel *_model)
columnResizingFixer = new GUIUtil::TableViewLastColumnResizingFixer(tableView, AMOUNT_MINIMUM_COLUMN_WIDTH, DATE_COLUMN_WIDTH, this); columnResizingFixer = new GUIUtil::TableViewLastColumnResizingFixer(tableView, AMOUNT_MINIMUM_COLUMN_WIDTH, DATE_COLUMN_WIDTH, this);
if (model->wallet().getDefaultAddressType() == OutputType::BECH32) { if (model->wallet().getDefaultAddressType() == OutputType::BECH32) {
ui->useBech32->setCheckState(Qt::Checked); ui->useLegacyAddress->setCheckState(Qt::Unchecked);
} else { } else {
ui->useBech32->setCheckState(Qt::Unchecked); ui->useLegacyAddress->setCheckState(Qt::Checked);
} }
// Set the button to be enabled or disabled based on whether the wallet can give out new addresses. // Set the button to be enabled or disabled based on whether the wallet can give out new addresses.
@ -150,7 +150,7 @@ void ReceiveCoinsDialog::on_receiveButton_clicked()
QString label = ui->reqLabel->text(); QString label = ui->reqLabel->text();
/* Generate new receiving address */ /* Generate new receiving address */
OutputType address_type; OutputType address_type;
if (ui->useBech32->isChecked()) { if (!ui->useLegacyAddress->isChecked()) {
address_type = OutputType::BECH32; address_type = OutputType::BECH32;
} else { } else {
address_type = model->wallet().getDefaultAddressType(); address_type = model->wallet().getDefaultAddressType();