fix:开启部分功能后手势面板显示异常

This commit is contained in:
2025-08-23 18:58:57 +08:00
parent 8719677f11
commit a5eb1dfca7
3 changed files with 23 additions and 9 deletions
+2 -1
View File
@@ -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);
@@ -124,6 +124,13 @@ namespace Ink_Canvas
/// </summary>
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);
+9 -3
View File
@@ -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);