diff --git a/ui/StatusQ/src/StatusQ/Popups/Dialog/StatusDialogHeader.qml b/ui/StatusQ/src/StatusQ/Popups/Dialog/StatusDialogHeader.qml index ce11c13ece4..74f427644ab 100644 --- a/ui/StatusQ/src/StatusQ/Popups/Dialog/StatusDialogHeader.qml +++ b/ui/StatusQ/src/StatusQ/Popups/Dialog/StatusDialogHeader.qml @@ -14,6 +14,13 @@ Rectangle { property alias leftComponent: leftComponentLoader.sourceComponent + property bool internalPopupActive + property color internalOverlayColor + property int popupFullHeight + property Component internalPopupComponent + + signal closeInternalPopup() + color: Theme.palette.statusModal.backgroundColor radius: 8 @@ -73,4 +80,29 @@ Rectangle { samples: 37 color: Theme.palette.dropShadow } + + Rectangle { + id: internalOverlay + anchors.fill: parent + anchors.bottomMargin: -1 * root.popupFullHeight + root.height + visible: root.internalPopupActive + radius: root.radius + color: root.internalOverlayColor + + MouseArea { + anchors.fill: parent + anchors.bottomMargin: popupLoader.height + onClicked: { + root.closeInternalPopup() + } + } + } + + Loader { + id: popupLoader + anchors.bottom: parent.bottom + anchors.bottomMargin: internalOverlay.anchors.bottomMargin + active: root.internalPopupActive + sourceComponent: root.internalPopupComponent + } } diff --git a/ui/StatusQ/src/assets.qrc b/ui/StatusQ/src/assets.qrc index 534fbc1b686..8a8a5bb818c 100644 --- a/ui/StatusQ/src/assets.qrc +++ b/ui/StatusQ/src/assets.qrc @@ -281,6 +281,7 @@ assets/img/icons/security.svg assets/img/icons/seed-phrase.svg assets/img/icons/send.svg + assets/img/icons/settings-advance.svg assets/img/icons/settings-advanced.svg assets/img/icons/settings.svg assets/img/icons/share-android.svg diff --git a/ui/StatusQ/src/assets/img/icons/settings-advance.svg b/ui/StatusQ/src/assets/img/icons/settings-advance.svg new file mode 100644 index 00000000000..6aca648d3c2 --- /dev/null +++ b/ui/StatusQ/src/assets/img/icons/settings-advance.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/ui/app/AppLayouts/Wallet/popups/SignTransactionModalBase.qml b/ui/app/AppLayouts/Wallet/popups/SignTransactionModalBase.qml index a81e79e8667..dc8fdd1ac2b 100644 --- a/ui/app/AppLayouts/Wallet/popups/SignTransactionModalBase.qml +++ b/ui/app/AppLayouts/Wallet/popups/SignTransactionModalBase.qml @@ -100,6 +100,12 @@ StatusDialog { default property alias contents: contentsLayout.data + property bool internalPopupActive: false + property color internalOverlayColor: Theme.palette.backdropColor + property Component internalPopupComponent + + signal closeInternalPopup() + width: 480 padding: 0 @@ -117,6 +123,13 @@ StatusDialog { actions.closeButton.onClicked: root.close() leftComponent: root.headerIconComponent + + internalPopupActive: root.internalPopupActive + internalOverlayColor: root.internalOverlayColor + popupFullHeight: root.height + internalPopupComponent: root.internalPopupComponent + + onCloseInternalPopup: root.closeInternalPopup() } footer: StatusDialogFooter { diff --git a/ui/app/AppLayouts/Wallet/popups/simpleSend/SendSignModal.qml b/ui/app/AppLayouts/Wallet/popups/simpleSend/SendSignModal.qml index 89483243043..84c756864f8 100644 --- a/ui/app/AppLayouts/Wallet/popups/simpleSend/SendSignModal.qml +++ b/ui/app/AppLayouts/Wallet/popups/simpleSend/SendSignModal.qml @@ -9,6 +9,7 @@ import StatusQ.Controls 0.1 import StatusQ.Components 0.1 import AppLayouts.Wallet.panels 1.0 +import AppLayouts.Wallet.views 1.0 import AppLayouts.Wallet.popups 1.0 import utils 1.0 @@ -166,8 +167,28 @@ SignTransactionModalBase { loading: root.feesLoading } } + StatusFlatButton { + tooltip.text: qsTr("Edit transaction settings") + icon.name: "settings-advance" + textColor: hovered? Theme.palette.directColor1 : Theme.palette.baseColor1 + onClicked: { + root.internalPopupActive = true + } + } + } + } + + property Component internalPopup: TransactionSettings { + + onCancelClicked: { + root.internalPopupActive = false } } + internalPopupComponent: internalPopup + + onCloseInternalPopup: { + root.internalPopupActive = false + } // Send Asset SignInfoBox { @@ -196,6 +217,7 @@ SignTransactionModalBase { } ] visible: !root.isCollectible + enabled: !root.internalPopupActive } // Send Collectible @@ -222,6 +244,7 @@ SignTransactionModalBase { onOpenLink: (link) => root.openLinkWithConfirmation(link) } visible: root.isCollectible + enabled: !root.internalPopupActive } // From @@ -263,6 +286,7 @@ SignTransactionModalBase { onOpenLink: (link) => root.openLinkWithConfirmation(link) } ] + enabled: !root.internalPopupActive } // Network