diff --git a/ShareX.ScreenCaptureLib/Shapes/BaseShape.cs b/ShareX.ScreenCaptureLib/Shapes/BaseShape.cs index 4e5138451..4b99cbf19 100644 --- a/ShareX.ScreenCaptureLib/Shapes/BaseShape.cs +++ b/ShareX.ScreenCaptureLib/Shapes/BaseShape.cs @@ -97,6 +97,8 @@ private set public virtual bool IsSelectable => Manager.CurrentTool == ShapeType || Manager.CurrentTool == ShapeType.ToolSelect; + public bool ForceProportionalResizing { get; protected set; } + internal ShapeManager Manager { get; set; } protected InputManager InputManager => Manager.InputManager; @@ -246,7 +248,7 @@ public virtual void OnUpdate() StartPosition = StartPosition.Add(InputManager.MouseVelocity); } - if (Manager.IsProportionalResizing) + if (Manager.IsProportionalResizing || ForceProportionalResizing) { float degree, startDegree; diff --git a/ShareX.ScreenCaptureLib/Shapes/Drawing/MagnifyDrawingShape.cs b/ShareX.ScreenCaptureLib/Shapes/Drawing/MagnifyDrawingShape.cs index 023e17f42..e00dfc80c 100644 --- a/ShareX.ScreenCaptureLib/Shapes/Drawing/MagnifyDrawingShape.cs +++ b/ShareX.ScreenCaptureLib/Shapes/Drawing/MagnifyDrawingShape.cs @@ -35,6 +35,11 @@ public class MagnifyDrawingShape : EllipseDrawingShape public int MagnifyStrength { get; set; } = 200; + public MagnifyDrawingShape() + { + ForceProportionalResizing = true; + } + public override void OnConfigLoad() { base.OnConfigLoad();