From fd1e5e13fe6ab48eb6a5f72ff984f6cb5b91a926 Mon Sep 17 00:00:00 2001 From: CJKmkp <2564608840@qq.com> Date: Mon, 22 Sep 2025 12:11:03 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E8=BF=9B=E5=85=A5PPT=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E6=94=B6=E7=BA=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Ink Canvas/MainWindow_cs/MW_PPT.cs | 61 +++++++++++++++++++++++++++++- 1 file changed, 60 insertions(+), 1 deletion(-) diff --git a/Ink Canvas/MainWindow_cs/MW_PPT.cs b/Ink Canvas/MainWindow_cs/MW_PPT.cs index bcb28f45..afa98818 100644 --- a/Ink Canvas/MainWindow_cs/MW_PPT.cs +++ b/Ink Canvas/MainWindow_cs/MW_PPT.cs @@ -1597,8 +1597,36 @@ namespace Ink_Canvas HideSubPanels("cursor"); SetCurrentToolMode(InkCanvasEditingMode.None); + // 根据"退出PPT放映后自动恢复浮动栏状态"设置决定浮动栏边距 await Task.Delay(150); - ViewboxFloatingBarMarginAnimation(100, true); + if (Settings.Automation.IsAutoFoldAfterPPTSlideShow) + { + // 如果启用了"退出PPT放映后自动恢复浮动栏状态"功能,根据进入前状态设置边距 + if (wasFloatingBarFoldedWhenEnterSlideShow) + { + // 进入前是收纳状态,设置为收纳边距 + ViewboxFloatingBarMarginAnimation(-60); + } + else + { + // 进入前是展开状态,设置为展开边距 + ViewboxFloatingBarMarginAnimation(100, true); + } + } + else + { + // 如果没有启用"退出PPT放映后自动恢复浮动栏状态"功能,根据当前状态设置边距 + if (isFloatingBarFolded) + { + // 如果浮动栏处于收纳状态,设置为收纳边距 + ViewboxFloatingBarMarginAnimation(-60); + } + else + { + // 如果浮动栏处于展开状态,设置为展开边距 + ViewboxFloatingBarMarginAnimation(100, true); + } + } } catch (Exception ex) { @@ -1613,6 +1641,37 @@ namespace Ink_Canvas // 异常情况下也手动处理收纳状态恢复 await HandleManualSlideShowEnd(); + + // 异常情况下也要根据设置决定浮动栏边距 + await Task.Delay(150); + if (Settings.Automation.IsAutoFoldAfterPPTSlideShow) + { + // 如果启用了"退出PPT放映后自动恢复浮动栏状态"功能,根据进入前状态设置边距 + if (wasFloatingBarFoldedWhenEnterSlideShow) + { + // 进入前是收纳状态,设置为收纳边距 + ViewboxFloatingBarMarginAnimation(-60); + } + else + { + // 进入前是展开状态,设置为展开边距 + ViewboxFloatingBarMarginAnimation(100, true); + } + } + else + { + // 如果没有启用"退出PPT放映后自动恢复浮动栏状态"功能,根据当前状态设置边距 + if (isFloatingBarFolded) + { + // 如果浮动栏处于收纳状态,设置为收纳边距 + ViewboxFloatingBarMarginAnimation(-60); + } + else + { + // 如果浮动栏处于展开状态,设置为展开边距 + ViewboxFloatingBarMarginAnimation(100, true); + } + } } }