add:退出PPT放映自动恢复收纳模式 #38
This commit is contained in:
@@ -2446,8 +2446,16 @@
|
|||||||
IsOn="False" FontFamily="Microsoft YaHei UI" FontWeight="Bold"
|
IsOn="False" FontFamily="Microsoft YaHei UI" FontWeight="Bold"
|
||||||
Toggled="ToggleSwitchAutoEnterAnnotationModeWhenExitFoldMode_Toggled" />
|
Toggled="ToggleSwitchAutoEnterAnnotationModeWhenExitFoldMode_Toggled" />
|
||||||
</ui:SimpleStackPanel>
|
</ui:SimpleStackPanel>
|
||||||
|
|
||||||
<TextBlock Text="# 开启后,退出收纳模式时将自动切换至批注模式,便于快速批注" TextWrapping="Wrap" Foreground="#a1a1aa" />
|
<TextBlock Text="# 开启后,退出收纳模式时将自动切换至批注模式,便于快速批注" TextWrapping="Wrap" Foreground="#a1a1aa" />
|
||||||
|
<ui:SimpleStackPanel Orientation="Horizontal" HorizontalAlignment="Left">
|
||||||
|
<TextBlock Foreground="#fafafa" Text="退出PPT放映后自动恢复浮动栏状态"
|
||||||
|
VerticalAlignment="Center" FontSize="14" Margin="0,0,16,0" />
|
||||||
|
<ui:ToggleSwitch OnContent="" OffContent=""
|
||||||
|
Name="ToggleSwitchAutoFoldAfterPPTSlideShow"
|
||||||
|
IsOn="False" FontFamily="Microsoft YaHei UI" FontWeight="Bold"
|
||||||
|
Toggled="ToggleSwitchAutoFoldAfterPPTSlideShow_Toggled" />
|
||||||
|
</ui:SimpleStackPanel>
|
||||||
|
<TextBlock Text="# 开启后,如果进入PPT放映前为收纳模式则退出后也为收纳模式,如果进入前不是收纳模式则退出后也不是收纳模式" TextWrapping="Wrap" Foreground="#a1a1aa" />
|
||||||
</ui:SimpleStackPanel>
|
</ui:SimpleStackPanel>
|
||||||
</GroupBox>
|
</GroupBox>
|
||||||
<GroupBox Name="GroupBoxRandWindow">
|
<GroupBox Name="GroupBoxRandWindow">
|
||||||
|
|||||||
@@ -78,6 +78,9 @@ namespace Ink_Canvas {
|
|||||||
public static Slide slide = null;
|
public static Slide slide = null;
|
||||||
public static int slidescount = 0;
|
public static int slidescount = 0;
|
||||||
|
|
||||||
|
// 在类中添加字段
|
||||||
|
private bool wasFloatingBarFoldedWhenEnterSlideShow = false;
|
||||||
|
|
||||||
private void BtnCheckPPT_Click(object sender, RoutedEventArgs e) {
|
private void BtnCheckPPT_Click(object sender, RoutedEventArgs e) {
|
||||||
try {
|
try {
|
||||||
pptApplication =
|
pptApplication =
|
||||||
@@ -579,6 +582,8 @@ namespace Ink_Canvas {
|
|||||||
|
|
||||||
private async void PptApplication_SlideShowBegin(SlideShowWindow Wn) {
|
private async void PptApplication_SlideShowBegin(SlideShowWindow Wn) {
|
||||||
try {
|
try {
|
||||||
|
// 记录进入放映时浮动栏收纳状态
|
||||||
|
wasFloatingBarFoldedWhenEnterSlideShow = isFloatingBarFolded;
|
||||||
|
|
||||||
if (Settings.Automation.IsAutoFoldInPPTSlideShow && !isFloatingBarFolded)
|
if (Settings.Automation.IsAutoFoldInPPTSlideShow && !isFloatingBarFolded)
|
||||||
await FoldFloatingBar(new object());
|
await FoldFloatingBar(new object());
|
||||||
@@ -728,7 +733,12 @@ namespace Ink_Canvas {
|
|||||||
|
|
||||||
private async void PptApplication_SlideShowEnd(Presentation Pres) {
|
private async void PptApplication_SlideShowEnd(Presentation Pres) {
|
||||||
try {
|
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,用于后续检测未关闭的进程
|
// 记录 WPP 进程 ID,用于后续检测未关闭的进程
|
||||||
if (pptApplication != null)
|
if (pptApplication != null)
|
||||||
|
|||||||
@@ -2171,5 +2171,11 @@ namespace Ink_Canvas {
|
|||||||
Settings.Canvas.IsCompressPicturesUploaded = ToggleSwitchCompressPicturesUploaded.IsOn;
|
Settings.Canvas.IsCompressPicturesUploaded = ToggleSwitchCompressPicturesUploaded.IsOn;
|
||||||
SaveSettingsToFile();
|
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;
|
ToggleSwitchAutoFoldInPPTSlideShow.IsOn = Settings.Automation.IsAutoFoldInPPTSlideShow;
|
||||||
|
|
||||||
|
ToggleSwitchAutoFoldAfterPPTSlideShow.IsOn = Settings.Automation.IsAutoFoldAfterPPTSlideShow;
|
||||||
|
|
||||||
if (Settings.Automation.IsAutoKillEasiNote || Settings.Automation.IsAutoKillPptService ||
|
if (Settings.Automation.IsAutoKillEasiNote || Settings.Automation.IsAutoKillPptService ||
|
||||||
Settings.Automation.IsAutoKillHiteAnnotation || Settings.Automation.IsAutoKillInkCanvas
|
Settings.Automation.IsAutoKillHiteAnnotation || Settings.Automation.IsAutoKillInkCanvas
|
||||||
|| Settings.Automation.IsAutoKillICA || Settings.Automation.IsAutoKillIDT ||
|
|| Settings.Automation.IsAutoKillICA || Settings.Automation.IsAutoKillIDT ||
|
||||||
|
|||||||
@@ -323,6 +323,9 @@ namespace Ink_Canvas
|
|||||||
[JsonProperty("isAutoFoldInPPTSlideShow")]
|
[JsonProperty("isAutoFoldInPPTSlideShow")]
|
||||||
public bool IsAutoFoldInPPTSlideShow { get; set; } = false;
|
public bool IsAutoFoldInPPTSlideShow { get; set; } = false;
|
||||||
|
|
||||||
|
[JsonProperty("isAutoFoldAfterPPTSlideShow")]
|
||||||
|
public bool IsAutoFoldAfterPPTSlideShow { get; set; } = false;
|
||||||
|
|
||||||
[JsonProperty("isAutoKillPptService")]
|
[JsonProperty("isAutoKillPptService")]
|
||||||
public bool IsAutoKillPptService { get; set; } = false;
|
public bool IsAutoKillPptService { get; set; } = false;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user