From a5eb1dfca7331010927c3d7108b437bd48eab612 Mon Sep 17 00:00:00 2001 From: CJKmkp <2564608840@qq.com> Date: Sat, 23 Aug 2025 18:58:57 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E5=BC=80=E5=90=AF=E9=83=A8=E5=88=86?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=90=8E=E6=89=8B=E5=8A=BF=E9=9D=A2=E6=9D=BF?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Ink Canvas/MainWindow_cs/MW_Colors.cs | 3 ++- Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs | 17 ++++++++++++----- Ink Canvas/MainWindow_cs/MW_PPT.cs | 12 +++++++++--- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/Ink Canvas/MainWindow_cs/MW_Colors.cs b/Ink Canvas/MainWindow_cs/MW_Colors.cs index fdd0b1ea..baa50911 100644 --- a/Ink Canvas/MainWindow_cs/MW_Colors.cs +++ b/Ink Canvas/MainWindow_cs/MW_Colors.cs @@ -29,9 +29,10 @@ namespace Ink_Canvas AnimationsHelper.HideWithSlideAndFade(BlackboardCenterSide); AnimationsHelper.HideWithSlideAndFade(BlackboardRightSide); - // 在PPT模式下隐藏手势面板 + // 在PPT模式下隐藏手势面板和手势按钮 AnimationsHelper.HideWithSlideAndFade(TwoFingerGestureBorder); AnimationsHelper.HideWithSlideAndFade(BoardTwoFingerGestureBorder); + EnableTwoFingerGestureBorder.Visibility = Visibility.Collapsed; } BtnHideInkCanvas_Click(BtnHideInkCanvas, null); diff --git a/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs b/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs index 0a17d259..edd67c3d 100644 --- a/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs +++ b/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs @@ -124,6 +124,13 @@ namespace Ink_Canvas /// private void CheckEnableTwoFingerGestureBtnVisibility(bool isVisible) { + // 在PPT模式下始终隐藏手势按钮 + if (currentMode == 0 || BtnPPTSlideShowEnd.Visibility == Visibility.Visible) + { + EnableTwoFingerGestureBorder.Visibility = Visibility.Collapsed; + return; + } + if (StackPanelCanvasControls.Visibility != Visibility.Visible || BorderFloatingBarMainControls.Visibility != Visibility.Visible) { @@ -131,9 +138,7 @@ namespace Ink_Canvas } else if (isVisible) { - if (BtnPPTSlideShowEnd.Visibility == Visibility.Visible) - EnableTwoFingerGestureBorder.Visibility = Visibility.Collapsed; - else EnableTwoFingerGestureBorder.Visibility = Visibility.Visible; + EnableTwoFingerGestureBorder.Visibility = Visibility.Visible; } else { @@ -2472,9 +2477,10 @@ namespace Ink_Canvas DeselectUIElement(); - // 在PPT模式下隐藏手势面板 + // 在PPT模式下隐藏手势面板和手势按钮 AnimationsHelper.HideWithSlideAndFade(TwoFingerGestureBorder); AnimationsHelper.HideWithSlideAndFade(BoardTwoFingerGestureBorder); + EnableTwoFingerGestureBorder.Visibility = Visibility.Collapsed; SaveStrokes(true); ClearStrokes(true); @@ -2521,9 +2527,10 @@ namespace Ink_Canvas // 取消任何UI元素的选择 DeselectUIElement(); - // 在PPT模式下隐藏手势面板 + // 在PPT模式下隐藏手势面板和手势按钮 AnimationsHelper.HideWithSlideAndFade(TwoFingerGestureBorder); AnimationsHelper.HideWithSlideAndFade(BoardTwoFingerGestureBorder); + EnableTwoFingerGestureBorder.Visibility = Visibility.Collapsed; SaveStrokes(); ClearStrokes(true); diff --git a/Ink Canvas/MainWindow_cs/MW_PPT.cs b/Ink Canvas/MainWindow_cs/MW_PPT.cs index 50cf5edf..384f86c3 100644 --- a/Ink Canvas/MainWindow_cs/MW_PPT.cs +++ b/Ink Canvas/MainWindow_cs/MW_PPT.cs @@ -292,9 +292,10 @@ namespace Ink_Canvas BorderFloatingBarMainControls.Visibility = Visibility.Visible; - // 在PPT模式下隐藏手势面板 + // 在PPT模式下隐藏手势面板和手势按钮 AnimationsHelper.HideWithSlideAndFade(TwoFingerGestureBorder); AnimationsHelper.HideWithSlideAndFade(BoardTwoFingerGestureBorder); + EnableTwoFingerGestureBorder.Visibility = Visibility.Collapsed; if (Settings.PowerPointSettings.IsShowCanvasAtNewSlideShow && !Settings.Automation.IsAutoFoldInPPTSlideShow) @@ -398,12 +399,17 @@ namespace Ink_Canvas // 注意:这里只清空索引0的备份,不影响白板页面的墨迹(索引1及以上) TimeMachineHistories[0] = null; - // 退出PPT模式时恢复手势面板的显示状态 + // 退出PPT模式时恢复手势面板和手势按钮的显示状态 if (Settings.Gesture.IsEnableTwoFingerGesture && ToggleSwitchEnableMultiTouchMode.IsOn) { - // 根据手势设置决定是否显示手势面板 + // 根据手势设置决定是否显示手势面板和手势按钮 CheckEnableTwoFingerGestureBtnVisibility(true); } + else + { + // 如果手势功能未启用,确保手势按钮保持隐藏 + EnableTwoFingerGestureBorder.Visibility = Visibility.Collapsed; + } if (GridTransparencyFakeBackground.Background != Brushes.Transparent) BtnHideInkCanvas_Click(BtnHideInkCanvas, null);