add:退出PPT放映自动恢复收纳模式 #38

This commit is contained in:
2025-07-21 16:53:11 +08:00
parent 166e0d400a
commit 17b2d744ba
5 changed files with 31 additions and 2 deletions
+11 -1
View File
@@ -78,6 +78,9 @@ namespace Ink_Canvas {
public static Slide slide = null;
public static int slidescount = 0;
// 在类中添加字段
private bool wasFloatingBarFoldedWhenEnterSlideShow = false;
private void BtnCheckPPT_Click(object sender, RoutedEventArgs e) {
try {
pptApplication =
@@ -579,6 +582,8 @@ namespace Ink_Canvas {
private async void PptApplication_SlideShowBegin(SlideShowWindow Wn) {
try {
// 记录进入放映时浮动栏收纳状态
wasFloatingBarFoldedWhenEnterSlideShow = isFloatingBarFolded;
if (Settings.Automation.IsAutoFoldInPPTSlideShow && !isFloatingBarFolded)
await FoldFloatingBar(new object());
@@ -728,7 +733,12 @@ namespace Ink_Canvas {
private async void PptApplication_SlideShowEnd(Presentation Pres) {
try {
if (isFloatingBarFolded) await UnFoldFloatingBar(new object());
// 新增逻辑:如果设置开启且进入PPT放映时浮动栏是收纳的,退出时也自动收纳;否则自动展开
if (Settings.Automation.IsAutoFoldAfterPPTSlideShow && wasFloatingBarFoldedWhenEnterSlideShow) {
if (!isFloatingBarFolded) await FoldFloatingBar(new object());
} else {
if (isFloatingBarFolded) await UnFoldFloatingBar(new object());
}
// 记录 WPP 进程 ID,用于后续检测未关闭的进程
if (pptApplication != null)
+6
View File
@@ -2171,5 +2171,11 @@ namespace Ink_Canvas {
Settings.Canvas.IsCompressPicturesUploaded = ToggleSwitchCompressPicturesUploaded.IsOn;
SaveSettingsToFile();
}
private void ToggleSwitchAutoFoldAfterPPTSlideShow_Toggled(object sender, RoutedEventArgs e) {
if (!isLoaded) return;
Settings.Automation.IsAutoFoldAfterPPTSlideShow = ToggleSwitchAutoFoldAfterPPTSlideShow.IsOn;
SaveSettingsToFile();
}
}
}
@@ -683,6 +683,8 @@ namespace Ink_Canvas {
ToggleSwitchAutoFoldInPPTSlideShow.IsOn = Settings.Automation.IsAutoFoldInPPTSlideShow;
ToggleSwitchAutoFoldAfterPPTSlideShow.IsOn = Settings.Automation.IsAutoFoldAfterPPTSlideShow;
if (Settings.Automation.IsAutoKillEasiNote || Settings.Automation.IsAutoKillPptService ||
Settings.Automation.IsAutoKillHiteAnnotation || Settings.Automation.IsAutoKillInkCanvas
|| Settings.Automation.IsAutoKillICA || Settings.Automation.IsAutoKillIDT ||