diff --git a/main.qml b/main.qml
index 5c7b62c9..b09e0bba 100644
--- a/main.qml
+++ b/main.qml
@@ -1951,14 +1951,26 @@ ApplicationWindow {
         }
 
         // If daemon is running - prompt user before exiting
-        if(typeof daemonManager != "undefined" && daemonRunning) {
-            if (appWindow.walletMode == 0) {
-                stopDaemon(closeAccepted);
-            } else {
-                showDaemonIsRunningDialog(closeAccepted);
-            }
-        } else {
+        if(daemonManager == undefined || persistentSettings.useRemoteNode) {
             closeAccepted();
+        } else if (appWindow.walletMode == 0) {
+            stopDaemon(closeAccepted);
+        } else {
+            showProcessingSplash(qsTr("Checking local node status..."));
+            const handler = function(running) {
+                hideProcessingSplash();
+                if (running) {
+                    showDaemonIsRunningDialog(closeAccepted);
+                } else {
+                    closeAccepted();
+                }
+            };
+
+            if (currentWallet) {
+                handler(!currentWallet.disconnected);
+            } else {
+                daemonManager.runningAsync(persistentSettings.nettype, handler);
+            }
         }
     }