Sfoglia il codice sorgente

#295 Restore a tool when Space is released - fix for the first tool usage

tomaszkot 3 anni fa
parent
commit
9dfdcdf109
1 ha cambiato i file con 6 aggiunte e 3 eliminazioni
  1. 6 3
      PixiEditor/ViewModels/SubViewModels/Main/IoViewModel.cs

+ 6 - 3
PixiEditor/ViewModels/SubViewModels/Main/IoViewModel.cs

@@ -58,11 +58,14 @@ namespace PixiEditor.ViewModels.SubViewModels.Main
 
         private void ProcessShortcutDown(bool isRepeat, Key key)
         {
-            if (isRepeat && !restoreToolOnKeyUp && Owner.ShortcutController.LastShortcut != null &&
-                Owner.ShortcutController.LastShortcut.Command == Owner.ToolsSubViewModel.SelectToolCommand)
+            var controller = Owner.ShortcutController;
+            if (!restoreToolOnKeyUp && 
+                (controller.LastShortcut == null || controller.LastShortcut.Command == Owner.ToolsSubViewModel.SelectToolCommand)
+               )
             {
                 restoreToolOnKeyUp = true;
-                ShortcutController.BlockShortcutExecution = true;
+                if(isRepeat)
+                  ShortcutController.BlockShortcutExecution = true;
             }
 
             Owner.ShortcutController.KeyPressed(key, Keyboard.Modifiers);