Browse Source

Added space transient key to move tool and fixed returning to correct tool

flabbet 7 months ago
parent
commit
ab98cfd07a

+ 1 - 1
src/PixiEditor/ViewModels/SubViewModels/IoViewModel.cs

@@ -147,7 +147,7 @@ internal class IoViewModel : SubViewModel<ViewModelMain>
 
 
     private void ProcessShortcutDown(bool isRepeat, Key key, KeyModifiers argsModifiers)
     private void ProcessShortcutDown(bool isRepeat, Key key, KeyModifiers argsModifiers)
     {
     {
-        if (argsModifiers == KeyModifiers.None)
+        if (argsModifiers == KeyModifiers.None && !isRepeat)
         {
         {
             HandleTransientKey(key);
             HandleTransientKey(key);
         }
         }

+ 1 - 0
src/PixiEditor/ViewModels/SubViewModels/ToolsViewModel.cs

@@ -223,6 +223,7 @@ internal class ToolsViewModel : SubViewModel<ViewModelMain>, IToolsHandler
         if (ActiveTool == tool)
         if (ActiveTool == tool)
         {
         {
             ActiveTool.IsTransient = transient;
             ActiveTool.IsTransient = transient;
+            LastActionTool = ActiveTool;
             return;
             return;
         }
         }
 
 

+ 1 - 1
src/PixiEditor/ViewModels/Tools/Tools/MoveToolViewModel.cs

@@ -13,7 +13,7 @@ using PixiEditor.Views.Overlays.BrushShapeOverlay;
 
 
 namespace PixiEditor.ViewModels.Tools.Tools;
 namespace PixiEditor.ViewModels.Tools.Tools;
 
 
-[Command.Tool(Key = Key.V)]
+[Command.Tool(Key = Key.V, Transient = Key.Space)]
 internal class MoveToolViewModel : ToolViewModel, IMoveToolHandler
 internal class MoveToolViewModel : ToolViewModel, IMoveToolHandler
 {
 {
     private string defaultActionDisplay = "MOVE_TOOL_ACTION_DISPLAY";
     private string defaultActionDisplay = "MOVE_TOOL_ACTION_DISPLAY";