diff --git a/electrum/gui/qml/components/Addresses.qml b/electrum/gui/qml/components/Addresses.qml index 4da07dd1a..71d441121 100644 --- a/electrum/gui/qml/components/Addresses.qml +++ b/electrum/gui/qml/components/Addresses.qml @@ -276,6 +276,7 @@ Pane { } } + property color navigationBarBackgroundColor: constants.highlightBackground Component { id: sectionDelegate diff --git a/electrum/gui/qml/components/ChannelDetails.qml b/electrum/gui/qml/components/ChannelDetails.qml index ab18e6e45..42d55c37d 100644 --- a/electrum/gui/qml/components/ChannelDetails.qml +++ b/electrum/gui/qml/components/ChannelDetails.qml @@ -466,8 +466,8 @@ Pane { } } } - } + property color navigationBarBackgroundColor: constants.highlightBackground ChannelDetails { id: channeldetails diff --git a/electrum/gui/qml/components/Channels.qml b/electrum/gui/qml/components/Channels.qml index 4b015acf5..ea8c1283a 100644 --- a/electrum/gui/qml/components/Channels.qml +++ b/electrum/gui/qml/components/Channels.qml @@ -155,8 +155,8 @@ Pane { icon.source: '../../icons/lightning.png' } } - } + property color navigationBarBackgroundColor: constants.highlightBackground Component { id: openChannelDialog diff --git a/electrum/gui/qml/components/Invoices.qml b/electrum/gui/qml/components/Invoices.qml index f4767d7e3..513449f0d 100644 --- a/electrum/gui/qml/components/Invoices.qml +++ b/electrum/gui/qml/components/Invoices.qml @@ -112,4 +112,6 @@ Pane { } } } + property color navigationBarBackgroundColor: constants.highlightBackground + } diff --git a/electrum/gui/qml/components/NetworkOverview.qml b/electrum/gui/qml/components/NetworkOverview.qml index 12ffdc65a..ffb893c1c 100644 --- a/electrum/gui/qml/components/NetworkOverview.qml +++ b/electrum/gui/qml/components/NetworkOverview.qml @@ -314,6 +314,7 @@ Pane { } } } + property color navigationBarBackgroundColor: constants.highlightBackground Component { id: serverConfig diff --git a/electrum/gui/qml/components/ReceiveRequests.qml b/electrum/gui/qml/components/ReceiveRequests.qml index ffdd99c50..e389a48b1 100644 --- a/electrum/gui/qml/components/ReceiveRequests.qml +++ b/electrum/gui/qml/components/ReceiveRequests.qml @@ -107,4 +107,5 @@ Pane { } } } + property color navigationBarBackgroundColor: constants.highlightBackground } diff --git a/electrum/gui/qml/components/TxDetails.qml b/electrum/gui/qml/components/TxDetails.qml index 42f462a2e..0a5d217be 100644 --- a/electrum/gui/qml/components/TxDetails.qml +++ b/electrum/gui/qml/components/TxDetails.qml @@ -480,6 +480,7 @@ Pane { } } + property color navigationBarBackgroundColor: constants.highlightBackground TxDetails { id: txdetails diff --git a/electrum/gui/qml/components/WalletDetails.qml b/electrum/gui/qml/components/WalletDetails.qml index 2676c5862..de2337e95 100644 --- a/electrum/gui/qml/components/WalletDetails.qml +++ b/electrum/gui/qml/components/WalletDetails.qml @@ -518,6 +518,7 @@ Pane { } } } + property color navigationBarBackgroundColor: constants.highlightBackground Connections { target: Daemon diff --git a/electrum/gui/qml/components/WalletMainView.qml b/electrum/gui/qml/components/WalletMainView.qml index 593e49f9d..8fdbb6469 100644 --- a/electrum/gui/qml/components/WalletMainView.qml +++ b/electrum/gui/qml/components/WalletMainView.qml @@ -325,6 +325,7 @@ Item { } } } + property color navigationBarBackgroundColor: constants.highlightBackground PIResolver { id: piResolver diff --git a/electrum/gui/qml/components/Wallets.qml b/electrum/gui/qml/components/Wallets.qml index 635bd19dd..e98e82c14 100644 --- a/electrum/gui/qml/components/Wallets.qml +++ b/electrum/gui/qml/components/Wallets.qml @@ -116,27 +116,31 @@ Pane { } - FlatButton { + ButtonContainer { Layout.fillWidth: true - text: qsTr('Create Wallet') - icon.source: '../../icons/add.png' - onClicked: { - if (Daemon.availableWallets.rowCount() > 0 && Config.walletShouldUseSinglePassword - && (!Daemon.singlePassword || Daemon.numWalletsWithPassword(Daemon.singlePassword) < 1)) { - // if the user has wallets but hasn't unlocked any wallet yet force them to do so. - // this ensures they know at least one wallets password and can complete the wizard - // where they will need to enter the password of an existing wallet. - var dialog = app.messageDialog.createObject(app, { - title: qsTr('Wallet unlock required'), - text: qsTr("You have to unlock any existing wallet first before creating a new wallet."), - }) - dialog.open() - } else { - rootItem.createWallet() + FlatButton { + Layout.fillWidth: true + text: qsTr('Create Wallet') + icon.source: '../../icons/add.png' + onClicked: { + if (Daemon.availableWallets.rowCount() > 0 && Config.walletShouldUseSinglePassword + && (!Daemon.singlePassword || Daemon.numWalletsWithPassword(Daemon.singlePassword) < 1)) { + // if the user has wallets but hasn't unlocked any wallet yet force them to do so. + // this ensures they know at least one wallets password and can complete the wizard + // where they will need to enter the password of an existing wallet. + var dialog = app.messageDialog.createObject(app, { + title: qsTr('Wallet unlock required'), + text: qsTr("You have to unlock any existing wallet first before creating a new wallet."), + }) + dialog.open() + } else { + rootItem.createWallet() + } } } } } + property color navigationBarBackgroundColor: constants.highlightBackground Connections { target: Daemon diff --git a/electrum/gui/qml/components/controls/ElDialog.qml b/electrum/gui/qml/components/controls/ElDialog.qml index 2c7572816..b90402c9e 100644 --- a/electrum/gui/qml/components/controls/ElDialog.qml +++ b/electrum/gui/qml/components/controls/ElDialog.qml @@ -17,7 +17,7 @@ Dialog { property bool _wasOpened: false // Add bottom padding for Android navigation bar if needed - bottomPadding: needsSystemBarPadding ? app.navigationBarHeight : 0 + bottomPadding: needsSystemBarPadding && app.keyboardFreeZone.state != 'visible' ? app.navigationBarHeight : 0 // called to finally close dialog after checks by onClosing handler in main.qml function doClose() { diff --git a/electrum/gui/qml/components/main.qml b/electrum/gui/qml/components/main.qml index ce01372c9..7e4d7d251 100644 --- a/electrum/gui/qml/components/main.qml +++ b/electrum/gui/qml/components/main.qml @@ -36,6 +36,7 @@ ApplicationWindow property alias stack: mainStackView property alias keyboardFreeZone: _keyboardFreeZone property alias infobanner: _infobanner + property color _navigationBarBackgroundColor: 'transparent' property string pendingIntent: "" @@ -287,13 +288,21 @@ ApplicationWindow mainStackView.clear() mainStackView.push(Qt.resolvedUrl(item_url)) } + function updateStylingFromItem(item) { + _navigationBarBackgroundColor = item && 'navigationBarBackgroundColor' in item + ? item.navigationBarBackgroundColor + : 'transparent' + } + onCurrentItemChanged: updateStylingFromItem(currentItem) } // Add bottom padding for navigation bar on Android when UI is edge-to-edge Item { - visible: app.navigationBarHeight > 0 + visible: app.navigationBarHeight > 0 && _keyboardFreeZone.state != 'visible' Layout.fillWidth: true Layout.preferredHeight: app.navigationBarHeight + + Rectangle { anchors.fill: parent; color: _navigationBarBackgroundColor } } }