From c2018378240585973a0ec1dca1758af20f3282e9 Mon Sep 17 00:00:00 2001 From: UdjinM6 Date: Thu, 4 Dec 2025 03:30:13 +0300 Subject: [PATCH 1/4] feat: make "Advanced Options" toggle in wallet creation dialog look like a button --- src/qt/createwalletdialog.cpp | 4 +- src/qt/forms/createwalletdialog.ui | 67 +++++++++++++++--------------- src/qt/res/css/dark.css | 37 ++--------------- src/qt/res/css/general.css | 40 +++++++++++------- src/qt/res/css/light.css | 37 ++--------------- 5 files changed, 68 insertions(+), 117 deletions(-) diff --git a/src/qt/createwalletdialog.cpp b/src/qt/createwalletdialog.cpp index 8b19e927ba72..c7a6418fc5e7 100644 --- a/src/qt/createwalletdialog.cpp +++ b/src/qt/createwalletdialog.cpp @@ -28,11 +28,9 @@ CreateWalletDialog::CreateWalletDialog(QWidget* parent) : ui->groupBox->setVisible(false); ui->groupBox->setTitle(QString()); ui->advanced_toggle_button->setChecked(false); - ui->advanced_toggle_button->setArrowType(Qt::RightArrow); - ui->advanced_toggle_button->setFocusPolicy(Qt::NoFocus); connect(ui->advanced_toggle_button, &QToolButton::toggled, this, [this](bool checked) { ui->groupBox->setVisible(checked); - ui->advanced_toggle_button->setArrowType(checked ? Qt::DownArrow : Qt::RightArrow); + ui->advanced_toggle_button->setText(checked ? tr("Hide Advanced Options") : tr("Show Advanced Options")); }); connect(ui->wallet_name_line_edit, &QLineEdit::textEdited, [this](const QString& text) { diff --git a/src/qt/forms/createwalletdialog.ui b/src/qt/forms/createwalletdialog.ui index 48310006fc36..574a9a38005d 100644 --- a/src/qt/forms/createwalletdialog.ui +++ b/src/qt/forms/createwalletdialog.ui @@ -73,31 +73,6 @@ - - - - Advanced Options - - - Qt::ToolButtonTextBesideIcon - - - true - - - Qt::NoFocus - - - true - - - false - - - Qt::RightArrow - - - @@ -182,14 +157,40 @@ - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - + + + + + Show Advanced Options + + + Qt::ToolButtonTextOnly + + + true + + + Qt::NoFocus + + + true + + + false + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + diff --git a/src/qt/res/css/dark.css b/src/qt/res/css/dark.css index 9fe5b09762ed..281339030cf4 100644 --- a/src/qt/res/css/dark.css +++ b/src/qt/res/css/dark.css @@ -397,6 +397,7 @@ QWidget#AddressBookPage QPushButton#newAddress, QWidget#AddressBookPage QPushButton#copyAddress, QWidget#AddressBookPage QPushButton#showAddressQRCode, QWidget#AddressBookPage QPushButton#deleteAddress, +QDialog#CreateWalletDialog QToolButton#advanced_toggle_button, QDialog#OpenURIDialog QPushButton#selectFileButton, QDialog#OptionsDialog QPushButton#resetButton, QDialog#SendCoinsDialog .QPushButton#addButton, @@ -414,6 +415,7 @@ QWidget#AddressBookPage QPushButton#newAddress:hover, QWidget#AddressBookPage QPushButton#copyAddress:hover, QWidget#AddressBookPage QPushButton#showAddressQRCode:hover, QWidget#AddressBookPage QPushButton#deleteAddress:hover, +QDialog#CreateWalletDialog QToolButton#advanced_toggle_button:hover, QDialog#OpenURIDialog QPushButton#selectFileButton:hover, QDialog#OptionsDialog QPushButton#resetButton:hover, QDialog#SendCoinsDialog .QPushButton#addButton:hover, @@ -431,6 +433,7 @@ QWidget#AddressBookPage QPushButton#newAddress:pressed, QWidget#AddressBookPage QPushButton#copyAddress:pressed, QWidget#AddressBookPage QPushButton#showAddressQRCode:pressed, QWidget#AddressBookPage QPushButton#deleteAddress:pressed, +QDialog#CreateWalletDialog QToolButton#advanced_toggle_button:pressed, QDialog#OpenURIDialog QPushButton#selectFileButton:pressed, QDialog#OptionsDialog QPushButton#resetButton:pressed, QDialog#SendCoinsDialog .QPushButton#addButton:pressed, @@ -448,6 +451,7 @@ QWidget#AddressBookPage QPushButton#newAddress:disabled, QWidget#AddressBookPage QPushButton#copyAddress:disabled, QWidget#AddressBookPage QPushButton#showAddressQRCode:disabled, QWidget#AddressBookPage QPushButton#deleteAddress:disabled, +QDialog#CreateWalletDialog QToolButton#advanced_toggle_button:disabled, QDialog#OpenURIDialog QPushButton#selectFileButton:disabled, QDialog#OptionsDialog QPushButton#resetButton:disabled, QDialog#SendCoinsDialog .QPushButton#addButton:disabled, @@ -1088,39 +1092,6 @@ QScrollBar:right-arrow:disabled { image: url(':/images/arrow_light_right_hover'); } -/** - * CreateWalletDialog (Dark Theme) - */ - -QDialog#CreateWalletDialog QLabel, -QDialog#CreateWalletDialog QCheckBox { - color: #bbbbbb; /* slightly lighter labels */ -} - -QDialog#CreateWalletDialog QToolButton#advanced_toggle_button { - color: #bdbdbd !important; /* lighter chevron/text */ -} - -QDialog#CreateWalletDialog QToolButton#advanced_toggle_button:hover { - color: #e0e0e0 !important; /* lighter on hover for better feedback */ -} - -QDialog#CreateWalletDialog QGroupBox#groupBox { - background-color: #2a2a2a; /* card background */ - border: 1px solid #3c3c3c; /* subtle outline */ - border-radius: 8px; - padding: 2px 12px 12px 12px; /* minimal top padding */ - margin-top: 0px; /* remove extra gap above card */ -} - -QDialog#CreateWalletDialog QGroupBox#groupBox::title { - padding: 0px; /* ensure no extra space for (empty) title */ -} - -QDialog#CreateWalletDialog QLineEdit:focus { - border-color: #4da3ff; /* subtle macOS-like blue */ -} - /** * MnemonicVerificationDialog (Dark Theme) */ diff --git a/src/qt/res/css/general.css b/src/qt/res/css/general.css index a04af4d4d805..8faab6f4ec97 100644 --- a/src/qt/res/css/general.css +++ b/src/qt/res/css/general.css @@ -1180,6 +1180,31 @@ QDialog#CoinControlDialog .CoinControlTreeWidget#treeWidget::separator { } +/****************************************************** +CreateWalletDialog +******************************************************/ + +QDialog#CreateWalletDialog QToolButton#advanced_toggle_button { + border: 0px; + border-radius: 8px; + max-height: 26px; + min-height: 26px; + padding-left: 12px; + padding-right: 12px; + padding-top: 4px; + padding-bottom: 4px; +} + +QDialog#CreateWalletDialog QGroupBox#groupBox { + border-radius: 8px; + padding: 2px 12px 12px 12px; + margin-top: 0px; +} + +QDialog#CreateWalletDialog QGroupBox#groupBox::title { + padding: 0px; +} + /****************************************************** EditAddressDialog ******************************************************/ @@ -1985,21 +2010,6 @@ QDialog#HelpMessageDialog QScrollBar:horizontal { } - -/** - * CreateWalletDialog (Layout) - */ - -QDialog#CreateWalletDialog QGroupBox#groupBox { - border-radius: 8px; - padding: 2px 12px 12px 12px; - margin-top: 0px; -} - -QDialog#CreateWalletDialog QGroupBox#groupBox::title { - padding: 0px; -} - /** * MnemonicVerificationDialog (Layout) */ diff --git a/src/qt/res/css/light.css b/src/qt/res/css/light.css index 4657ff8e9902..c2bed1496492 100644 --- a/src/qt/res/css/light.css +++ b/src/qt/res/css/light.css @@ -379,6 +379,7 @@ QWidget#AddressBookPage QPushButton#newAddress, QWidget#AddressBookPage QPushButton#copyAddress, QWidget#AddressBookPage QPushButton#showAddressQRCode, QWidget#AddressBookPage QPushButton#deleteAddress, +QDialog#CreateWalletDialog QToolButton#advanced_toggle_button, QDialog#OpenURIDialog QPushButton#selectFileButton, QDialog#OptionsDialog QPushButton#resetButton, QDialog#SendCoinsDialog .QPushButton#addButton, @@ -396,6 +397,7 @@ QWidget#AddressBookPage QPushButton#newAddress:hover, QWidget#AddressBookPage QPushButton#copyAddress:hover, QWidget#AddressBookPage QPushButton#showAddressQRCode:hover, QWidget#AddressBookPage QPushButton#deleteAddress:hover, +QDialog#CreateWalletDialog QToolButton#advanced_toggle_button:hover, QDialog#OpenURIDialog QPushButton#selectFileButton:hover, QDialog#OptionsDialog QPushButton#resetButton:hover, QDialog#SendCoinsDialog .QPushButton#addButton:hover, @@ -413,6 +415,7 @@ QWidget#AddressBookPage QPushButton#newAddress:pressed, QWidget#AddressBookPage QPushButton#copyAddress:pressed, QWidget#AddressBookPage QPushButton#showAddressQRCode:pressed, QWidget#AddressBookPage QPushButton#deleteAddress:pressed, +QDialog#CreateWalletDialog QToolButton#advanced_toggle_button:pressed, QDialog#OpenURIDialog QPushButton#selectFileButton:pressed, QDialog#OptionsDialog QPushButton#resetButton:pressed, QDialog#SendCoinsDialog .QPushButton#addButton:pressed, @@ -430,6 +433,7 @@ QWidget#AddressBookPage QPushButton#newAddress:disabled, QWidget#AddressBookPage QPushButton#copyAddress:disabled, QWidget#AddressBookPage QPushButton#showAddressQRCode:disabled, QWidget#AddressBookPage QPushButton#deleteAddress:disabled, +QDialog#CreateWalletDialog QToolButton#advanced_toggle_button:disabled, QDialog#OpenURIDialog QPushButton#selectFileButton:disabled, QDialog#OptionsDialog QPushButton#resetButton:disabled, QDialog#SendCoinsDialog .QPushButton#addButton:disabled, @@ -1072,39 +1076,6 @@ QScrollBar:right-arrow:disabled { image: url(':/images/arrow_light_right_normal'); } -/** - * CreateWalletDialog (Light Theme) - */ - -QDialog#CreateWalletDialog QLabel, -QDialog#CreateWalletDialog QCheckBox { - color: #555; /* ensure contrast consistent with labels */ -} - -QDialog#CreateWalletDialog QToolButton#advanced_toggle_button { - color: #555 !important; /* ensure good contrast in light mode */ -} - -QDialog#CreateWalletDialog QToolButton#advanced_toggle_button:hover { - color: #333 !important; /* darker on hover for better feedback */ -} - -QDialog#CreateWalletDialog QGroupBox#groupBox { - background-color: #eaeaec; /* card background */ - border: 1px solid #dcdcdc; /* subtle outline */ - border-radius: 8px; - padding: 2px 12px 12px 12px; /* minimal top padding */ - margin-top: 0px; /* remove extra gap above card */ -} - -QDialog#CreateWalletDialog QGroupBox#groupBox::title { - padding: 0px; /* ensure no extra space for (empty) title */ -} - -QDialog#CreateWalletDialog QLineEdit:focus { - border-color: #4da3ff; /* macOS-like blue */ -} - /** * MnemonicVerificationDialog (Light Theme) */ From 39e2f2b6f4fa84d2c4874f0801dac6cffe26494f Mon Sep 17 00:00:00 2001 From: UdjinM6 Date: Thu, 4 Dec 2025 03:31:47 +0300 Subject: [PATCH 2/4] fix: shrink wallet creation dialog when advanced options are hidden --- src/qt/createwalletdialog.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/qt/createwalletdialog.cpp b/src/qt/createwalletdialog.cpp index c7a6418fc5e7..8f798a5b18d5 100644 --- a/src/qt/createwalletdialog.cpp +++ b/src/qt/createwalletdialog.cpp @@ -20,6 +20,8 @@ CreateWalletDialog::CreateWalletDialog(QWidget* parent) : ui(new Ui::CreateWalletDialog) { ui->setupUi(this); + layout()->setSizeConstraint(QLayout::SetFixedSize); + ui->buttonBox->button(QDialogButtonBox::Ok)->setText(tr("Create")); ui->buttonBox->button(QDialogButtonBox::Ok)->setEnabled(false); ui->wallet_name_line_edit->setFocus(Qt::ActiveWindowFocusReason); From aa78fcaa191de981fe950abf6c52587b69aa707d Mon Sep 17 00:00:00 2001 From: UdjinM6 Date: Thu, 4 Dec 2025 13:04:58 +0300 Subject: [PATCH 3/4] fix: adjust focusPolicy --- src/qt/forms/createwalletdialog.ui | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/qt/forms/createwalletdialog.ui b/src/qt/forms/createwalletdialog.ui index 574a9a38005d..d4a3c3dd1da4 100644 --- a/src/qt/forms/createwalletdialog.ui +++ b/src/qt/forms/createwalletdialog.ui @@ -169,9 +169,6 @@ true - - Qt::NoFocus - true From c34bd8b9b4d8ff73e53efe649a58f714a8bc3bd8 Mon Sep 17 00:00:00 2001 From: UdjinM6 Date: Thu, 4 Dec 2025 13:05:56 +0300 Subject: [PATCH 4/4] fix: improve QGroupBox styling consistency --- src/qt/res/css/dark.css | 1 - src/qt/res/css/general.css | 1 + src/qt/res/css/light.css | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/qt/res/css/dark.css b/src/qt/res/css/dark.css index 281339030cf4..3558cd3e5228 100644 --- a/src/qt/res/css/dark.css +++ b/src/qt/res/css/dark.css @@ -272,7 +272,6 @@ QGroupBox QGroupBox { background-color: #39393b; color: #c7c7c7; - font-size: 16px; } /****************************************************** diff --git a/src/qt/res/css/general.css b/src/qt/res/css/general.css index 8faab6f4ec97..749006f738f4 100644 --- a/src/qt/res/css/general.css +++ b/src/qt/res/css/general.css @@ -385,6 +385,7 @@ QGroupBox QGroupBox { background-color:red; color: red; + font-size: 16px; padding-top: 20px; } diff --git a/src/qt/res/css/light.css b/src/qt/res/css/light.css index c2bed1496492..e1cf33aeec11 100644 --- a/src/qt/res/css/light.css +++ b/src/qt/res/css/light.css @@ -268,7 +268,7 @@ QGroupBox ******************************************************/ QGroupBox { - background-color: #f2f2f4; + background-color: #eaeaec; color: #555; }