fix:进入PPT自动收纳

This commit is contained in:
2025-09-22 12:11:03 +08:00
parent 19685b8f95
commit fd1e5e13fe
+59
View File
@@ -1597,9 +1597,37 @@ namespace Ink_Canvas
HideSubPanels("cursor");
SetCurrentToolMode(InkCanvasEditingMode.None);
// 根据"退出PPT放映后自动恢复浮动栏状态"设置决定浮动栏边距
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);
}
}
}
catch (Exception ex)
{
LogHelper.WriteLogToFile($"结束PPT放映操作异常: {ex}", LogHelper.LogType.Error);
@@ -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);
}
}
}
}