aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRiccardo Spagni <ric@spagni.net>2017-03-25 17:39:07 +0200
committerRiccardo Spagni <ric@spagni.net>2017-03-25 17:39:07 +0200
commitb3877868a31d42789dd480936bf89847a1cd979f (patch)
treec3364fc94e41652b6df52d58b3eeecf78db02945
parent716106c23e22e7e4075024319a5bd3d6f5dfb832 (diff)
parent9c4c34d502e7179964061c6af72470e37f9257af (diff)
downloadmonzero-gui-b3877868a31d42789dd480936bf89847a1cd979f.tar.gz
monzero-gui-b3877868a31d42789dd480936bf89847a1cd979f.tar.xz
monzero-gui-b3877868a31d42789dd480936bf89847a1cd979f.zip
Merge pull request #597
9c4c34d Use new fee multipliers after v5 fork requires #1915 (Jaquee) f05f0b7 add WalletManager::useForkRules() (Jaquee)
-rw-r--r--main.qml3
-rw-r--r--pages/Transfer.qml25
-rw-r--r--src/libwalletqt/Wallet.cpp5
-rw-r--r--src/libwalletqt/Wallet.h3
4 files changed, 35 insertions, 1 deletions
diff --git a/main.qml b/main.qml
index 3e3faf2d..267461d1 100644
--- a/main.qml
+++ b/main.qml
@@ -286,6 +286,9 @@ ApplicationWindow {
leftPanel.networkStatus.connected = status
leftPanel.progressBar.visible = (status === Wallet.ConnectionStatus_Connected) && !daemonSynced
+ // Update fee multiplier dropdown on transfer page
+ middlePanel.transferView.updatePriorityDropdown();
+
// If wallet isnt connected and no daemon is running - Ask
if(!walletInitialized && status === Wallet.ConnectionStatus_Disconnected && !daemonManager.running(persistentSettings.testnet)){
daemonManagerDialog.open();
diff --git a/pages/Transfer.qml b/pages/Transfer.qml
index ef3a1f3b..d84f26d5 100644
--- a/pages/Transfer.qml
+++ b/pages/Transfer.qml
@@ -195,6 +195,17 @@ Rectangle {
ListElement { column1: qsTr("High (x166 fee)") ; column2: ""; priority: PendingTransaction.Priority_High }
}
+ // Priorites after v5
+ ListModel {
+ id: priorityModelV5
+
+ ListElement { column1: qsTr("Low (x1 fee)") ; column2: ""; priority: 1}
+ ListElement { column1: qsTr("Default (x4 fee)") ; column2: ""; priority: 2 }
+ ListElement { column1: qsTr("Medium (x20 fee)") ; column2: ""; priority: 3 }
+ ListElement { column1: qsTr("High (x166 fee)") ; column2: ""; priority: 4 }
+
+ }
+
StandardDropdown {
id: priorityDropdown
anchors.top: transactionPriority.bottom
@@ -206,7 +217,6 @@ Rectangle {
shadowPressedColor: "#B32D00"
releasedColor: "#FF6C3C"
pressedColor: "#FF4304"
- dataModel: priorityModel
z: 1
}
@@ -700,6 +710,19 @@ Rectangle {
console.log("transfer page loaded")
updateStatus();
updateMixin();
+ updatePriorityDropdown()
+ }
+
+ function updatePriorityDropdown() {
+ // Use new fee multipliers after v5 fork
+ if (typeof currentWallet != "undefined" && currentWallet.useForkRules(5)) {
+ priorityDropdown.dataModel = priorityModelV5;
+ priorityDropdown.currentIndex = 1
+ } else {
+ priorityDropdown.dataModel = priorityModel;
+ priorityDropdown.currentIndex = 0
+ }
+
}
//TODO: Add daemon sync status
diff --git a/src/libwalletqt/Wallet.cpp b/src/libwalletqt/Wallet.cpp
index 96990050..6f397766 100644
--- a/src/libwalletqt/Wallet.cpp
+++ b/src/libwalletqt/Wallet.cpp
@@ -587,6 +587,11 @@ bool Wallet::rescanSpent()
return m_walletImpl->rescanSpent();
}
+bool Wallet::useForkRules(quint8 required_version, quint64 earlyBlocks) const
+{
+ return m_walletImpl->useForkRules(required_version,earlyBlocks);
+}
+
Wallet::Wallet(Monero::Wallet *w, QObject *parent)
: QObject(parent)
, m_walletImpl(w)
diff --git a/src/libwalletqt/Wallet.h b/src/libwalletqt/Wallet.h
index e947ecd0..187df16f 100644
--- a/src/libwalletqt/Wallet.h
+++ b/src/libwalletqt/Wallet.h
@@ -228,6 +228,9 @@ public:
// Rescan spent outputs
Q_INVOKABLE bool rescanSpent();
+ // check if fork rules should be used
+ Q_INVOKABLE bool useForkRules(quint8 version, quint64 earlyBlocks) const;
+
// TODO: setListenter() when it implemented in API
signals:
// emitted on every event happened with wallet