From 4755eb06e2e120a024a6a8d587fa0888c1b2cf3f Mon Sep 17 00:00:00 2001 From: CJKmkp <2564608840@qq.com> Date: Wed, 23 Jul 2025 23:12:37 +0800 Subject: [PATCH] =?UTF-8?q?improve:=E6=89=8B=E6=8E=8C=E6=93=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Ink Canvas/MainWindow_cs/MW_TouchEvents.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Ink Canvas/MainWindow_cs/MW_TouchEvents.cs b/Ink Canvas/MainWindow_cs/MW_TouchEvents.cs index 3d03ba51..fd81ff85 100644 --- a/Ink Canvas/MainWindow_cs/MW_TouchEvents.cs +++ b/Ink Canvas/MainWindow_cs/MW_TouchEvents.cs @@ -223,6 +223,7 @@ namespace Ink_Canvas { private bool isPalmEraserActive = false; private InkCanvasEditingMode palmEraserLastEditingMode = InkCanvasEditingMode.Ink; private bool palmEraserLastIsHighlighter = false; + private bool palmEraserWasEnabledBeforeMultiTouch = false; private void inkCanvas_PreviewTouchDown(object sender, TouchEventArgs e) { // 橡皮状态下不做任何切换,直接return,保证橡皮可持续 @@ -447,6 +448,12 @@ namespace Ink_Canvas { } inkCanvas.Children.Clear(); isInMultiTouchMode = false; + // 关闭多指书写时,恢复手掌擦开关 + if (palmEraserWasEnabledBeforeMultiTouch) { + Settings.Canvas.EnablePalmEraser = true; + if (ToggleSwitchEnablePalmEraser != null) + ToggleSwitchEnablePalmEraser.IsOn = true; + } } } @@ -466,6 +473,11 @@ namespace Ink_Canvas { } inkCanvas.Children.Clear(); isInMultiTouchMode = true; + // 启用多指书写时,自动禁用手掌擦 + palmEraserWasEnabledBeforeMultiTouch = Settings.Canvas.EnablePalmEraser; + Settings.Canvas.EnablePalmEraser = false; + if (ToggleSwitchEnablePalmEraser != null) + ToggleSwitchEnablePalmEraser.IsOn = false; } } }