Index: /windows/neo-vars/src/Source/recycle.ahk
===================================================================
--- /windows/neo-vars/src/Source/recycle.ahk	(revision 1133)
+++ /windows/neo-vars/src/Source/recycle.ahk	(revision 1137)
@@ -575,8 +575,9 @@
 
 *VKBFSC02B::
-  if (isMod3LPressed and !isMod3RPressed)
+  if (isMod3LPressed and !isMod3RPressed and !wasNonShiftKeyPressed)
     CharStarDown("MOD3", "MOD3", "SComp")
   isMod3RPressed := 1
   isMod3Pressed := 1
+  wasNonShiftKeyPressed := 0
   EbeneAktualisieren()
 return
@@ -591,8 +592,9 @@
 
 *VK14SC03A::
-  if (isMod3RPressed and !isMod3LPressed)
+  if (isMod3RPressed and !isMod3LPressed and !wasNonShiftKeyPressed)
     CharStarDown("MOD3", "MOD3", "SComp")
   isMod3LPressed := 1
   isMod3Pressed := 1
+  wasNonShiftKeyPressed := 0
   EbeneAktualisieren()
 return
@@ -616,6 +618,8 @@
   isMod4RPressed := 1
   isMod4Pressed := 1
-  EbeneAktualisieren()
-  if (isMod4LPressed and !wasMod4RPressed)
+  waswasNonShiftKeyPressed := wasNonShiftKeyPressed
+  wasNonShiftKeyPressed := 0
+  EbeneAktualisieren()
+  if (isMod4LPressed and !wasMod4RPressed and !waswasNonShiftKeyPressed)
     ToggleMod4Lock()
 return
@@ -631,6 +635,8 @@
   isMod4LPressed := 1
   isMod4Pressed := 1
-  EbeneAktualisieren()
-  if (isMod4RPressed and !wasMod4LPressed)
+  waswasNonShiftKeyPressed := wasNonShiftKeyPressed
+  wasNonShiftKeyPressed := 0
+  EbeneAktualisieren()
+  if (isMod4RPressed and !wasMod4LPressed and !waswasNonShiftKeyPressed)
     ToggleMod4Lock()
 return
