Merge pull request #99

fa1e92c Disable transfer page if daemon isn't connected or fully synced (Jacob Brydolf)
This commit is contained in:
Riccardo Spagni 2016-11-05 10:11:28 +02:00
commit 04325f4cd8
No known key found for this signature in database
GPG key ID: 55432DF31CCD4FCD
2 changed files with 22 additions and 9 deletions

View file

@ -52,6 +52,9 @@ Rectangle {
signal paymentClicked(string address, string paymentId, double amount, int mixinCount, int priority)
signal generatePaymentIdInvoked()
// Disable transfer page if daemon isnt fully synced
enabled: (currentView !== transferView || appWindow.daemonSynced)
color: "#F0EEEE"
onCurrentViewChanged: {
@ -279,14 +282,13 @@ Rectangle {
color: "#DBDBDB"
}
// indicates disabled state
// Desaturate {
// anchors.fill: parent
// source: parent
// desaturation: root.enabled ? 0.0 : 1.0
// }
Rectangle {
id:desaturate
color:"black"
anchors.fill: parent
opacity: 0.1
visible: (root.enabled)? 0 : 1;
}
/* connect "payment" click */

View file

@ -56,6 +56,7 @@ ApplicationWindow {
property int splashCounter: 0
property bool isNewWallet: false
property int restoreHeight:0
property bool daemonSynced: false
// true if wallet ever synchronized
property bool walletInitialized : false
@ -252,10 +253,21 @@ ApplicationWindow {
if (splash.visible) {
hideProcessingSplash()
}
// Check daemon status
var dCurrentBlock = currentWallet.daemonBlockChainHeight();
var dTargetBlock = currentWallet.daemonBlockChainTargetHeight();
leftPanel.daemonProgress.updateProgress(dCurrentBlock,dTargetBlock);
// Daemon connected
leftPanel.networkStatus.connected = currentWallet.connected
// Daemon fully synced
// TODO: implement onDaemonSynced or similar in wallet API and don't start refresh thread before daemon is synced
daemonSynced = (currentWallet.connected && dCurrentBlock >= dTargetBlock)
// Store wallet after every refresh.
if (currentWallet.blockChainHeight() > 1){
@ -277,7 +289,6 @@ ApplicationWindow {
walletInitialized = true
}
leftPanel.networkStatus.connected = currentWallet.connected
onWalletUpdate();
}