fix:issue #346
This commit is contained in:
@@ -1628,31 +1628,25 @@ namespace Ink_Canvas
|
||||
});
|
||||
}
|
||||
|
||||
// 结束放映
|
||||
if (_pptManager?.TryEndSlideShow() == true)
|
||||
Application.Current.Dispatcher.Invoke(() =>
|
||||
{
|
||||
// 如果成功结束放映,等待OnPPTSlideShowEnd事件处理收纳状态恢复
|
||||
}
|
||||
else
|
||||
{
|
||||
LogHelper.WriteLogToFile("结束幻灯片放映失败", LogHelper.LogType.Warning);
|
||||
CursorIcon_Click(null, null);
|
||||
});
|
||||
|
||||
// 手动更新UI状态,防止事件未触发
|
||||
await Application.Current.Dispatcher.InvokeAsync(() =>
|
||||
await Task.Delay(100);
|
||||
await Application.Current.Dispatcher.InvokeAsync(() => { }, System.Windows.Threading.DispatcherPriority.Background);
|
||||
|
||||
Application.Current.Dispatcher.BeginInvoke(new Action(() =>
|
||||
{
|
||||
try
|
||||
{
|
||||
_pptUIManager?.UpdateSlideShowStatus(false);
|
||||
_pptUIManager?.UpdateSidebarExitButtons(false);
|
||||
LogHelper.WriteLogToFile("手动更新放映结束UI状态", LogHelper.LogType.Trace);
|
||||
});
|
||||
|
||||
// 手动处理自动收纳,因为OnPPTSlideShowEnd事件可能未触发
|
||||
await HandleManualSlideShowEnd();
|
||||
}
|
||||
|
||||
HideSubPanels("cursor");
|
||||
SetCurrentToolMode(InkCanvasEditingMode.None);
|
||||
|
||||
await Task.Delay(150);
|
||||
_pptManager?.TryEndSlideShow();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogHelper.WriteLogToFile($"结束放映时发生异常: {ex}", LogHelper.LogType.Error);
|
||||
}
|
||||
}), System.Windows.Threading.DispatcherPriority.Normal);
|
||||
if (!isFloatingBarFolded)
|
||||
{
|
||||
PureViewboxFloatingBarMarginAnimationInDesktopMode();
|
||||
|
||||
Reference in New Issue
Block a user