diff --git a/pd/nw/pd_canvas.js b/pd/nw/pd_canvas.js
index 6f984859e2fbc266ec2d4ee360f11c18dbe16041..00f44967d46f5f0f4b9a68cfcfbb977b29c93171 100644
--- a/pd/nw/pd_canvas.js
+++ b/pd/nw/pd_canvas.js
@@ -107,8 +107,10 @@ function nw_window_focus_callback() {
 }
 
 function nw_window_blur_callback(name) {
-    // Fake a mouseup event
-    pdgui.pdsend(name, "mouseup_fake");
+    // Fake a mouseup event to keep from getting a dangling selection box
+    if (canvas_events.get_state === "normal") {
+        pdgui.pdsend(name, "mouseup_fake");
+    }
 }
 
 // These three functions need to be inside canvas_events closure