feat(设置界面): 重构自动化设置页面布局并优化悬浮窗拦截逻辑

将自动化设置页面中的白板应用分类整理,使用折叠面板分组显示
移除独立的悬浮窗拦截开关,改为根据子选项自动启用拦截功能
调整画板设置菜单项在导航中的位置
This commit is contained in:
PrefacedCorg
2026-04-26 21:01:11 +08:00
parent 3ab9fcc857
commit b4526473fa
3 changed files with 286 additions and 168 deletions
@@ -34,112 +34,201 @@
<TextBlock Text="{i18n:I18n Key=Automation_AutoFoldTitle}" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/> <TextBlock Text="{i18n:I18n Key=Automation_AutoFoldTitle}" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
<Grid > <ui:SettingsExpander Header="希沃"
<Grid.ColumnDefinitions> d:IsExpanded="True">
<ColumnDefinition Width="114514*" /> <ui:SettingsExpander.HeaderIcon>
<ColumnDefinition Width="114514*" /> <ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
</Grid.ColumnDefinitions> </ui:SettingsExpander.HeaderIcon>
<ui:SettingsExpander.Items>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_SeewoBoard5}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/EasiNote.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInEasiNote"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInEasiNote_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_SeewoCamera}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/EasiCamera.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInEasiCamera"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInEasiCamera_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_SeewoBoard3}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/EasiNote3.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInEasiNote3"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInEasiNote3_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_SeewoLightBoard}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/EasiNote3C.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInEasiNote3C"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInEasiNote3C_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_SeewoLightBoard5C}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/EasiNote5C.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInEasiNote5C"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInEasiNote5C_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_SeewoPinco}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/SeewoPinco.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInSeewoPincoTeacher"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInSeewoPincoTeacher_Toggled"/>
</ui:SettingsCard>
</ui:SettingsExpander.Items>
</ui:SettingsExpander>
<ui:SettingsExpander Header="{i18n:I18n Key=AutoFold_App_SeewoBoard5}" <ui:SettingsExpander Header="鸿合"
x:Name="ExpanderAutoFoldInEasiNote" d:IsExpanded="True">
d:IsExpanded="True" <ui:SettingsExpander.HeaderIcon>
Grid.Column="0" VerticalAlignment="Top"> <ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
<ui:SettingsExpander.HeaderIcon> </ui:SettingsExpander.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/EasiNote.png"/> <ui:SettingsExpander.Items>
</ui:SettingsExpander.HeaderIcon> <ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_HiteBoard}">
<ui:ToggleSwitch x:Name="CardAutoFoldInEasiNote" <ui:SettingsCard.HeaderIcon>
OnContent="{DynamicResource Common_On}" <ui:ImageIcon Source="/Resources/Icons-png/HiteBoard.png"/>
OffContent="{DynamicResource Common_Off}" </ui:SettingsCard.HeaderIcon>
Toggled="ToggleSwitchAutoFoldInEasiNote_Toggled"/> <ui:ToggleSwitch x:Name="CardAutoFoldInHiteTouchPro"
</ui:SettingsExpander> OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInHiteTouchPro_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_HiteCamera}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/HiteCamera.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInHiteCamera"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInHiteCamera_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_HiteLightBoard}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/HiteLightBoard.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInHiteLightBoard"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInHiteLightBoard_Toggled"/>
</ui:SettingsCard>
</ui:SettingsExpander.Items>
</ui:SettingsExpander>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInEasiCamera" <ui:SettingsExpander Header="其他白板"
Header="{i18n:I18n Key=AutoFold_App_SeewoCamera}" d:IsExpanded="True">
IconSource="/Resources/Icons-png/EasiCamera.png" <ui:SettingsExpander.HeaderIcon>
Toggled="ToggleSwitchAutoFoldInEasiCamera_Toggled" <ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
Grid.Column="1" VerticalAlignment="Top"/> </ui:SettingsExpander.HeaderIcon>
<ui:SettingsExpander.Items>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_WenXiangBoard}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/WenXiang.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInWxBoardMain"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInWxBoardMain_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_MSWhiteboard}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/Whiteboard.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInMSWhiteboard"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInMSWhiteboard_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_AdmoxBoard}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/AdmoxWhiteboard.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInAdmoxWhiteboard"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInAdmoxWhiteboard_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_AdmoxBooth}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/AdmoxBooth.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInAdmoxBooth"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInAdmoxBooth_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_YiYunBoard}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/YiYunWhiteboard.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInQPoint"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInQPoint_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_YiYunBooth}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/YiYunVisualPresenter.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInYiYunVisualPresenter"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInYiYunVisualPresenter_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_App_MaxHubBoard}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/MaxHubWhiteboard.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInMaxHubWhiteboard"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInMaxHubWhiteboard_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=AutoFold_OldZyBoard}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/Donview.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="CardAutoFoldInOldZyBoard"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchAutoFoldInOldZyBoard_Toggled"/>
</ui:SettingsCard>
</ui:SettingsExpander.Items>
</ui:SettingsExpander>
</Grid> <ui:SettingsExpander Header="幻灯片"
d:IsExpanded="True">
<controls:LabeledSettingsCard x:Name="CardAutoFoldInEasiNote3" <ui:SettingsExpander.HeaderIcon>
Header="{i18n:I18n Key=AutoFold_App_SeewoBoard3}" <ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Slideshow}"/>
IconSource="/Resources/Icons-png/EasiNote3.png" </ui:SettingsExpander.HeaderIcon>
Toggled="ToggleSwitchAutoFoldInEasiNote3_Toggled"/> <ui:SettingsCard Header="{i18n:I18n Key=Automation_AutoFoldInPPT}">
<ui:SettingsCard.HeaderIcon>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInEasiNote3C" <ui:ImageIcon Source="/Resources/Icons-png/PPTTools.png"/>
Header="{i18n:I18n Key=AutoFold_App_SeewoLightBoard}" </ui:SettingsCard.HeaderIcon>
IconSource="/Resources/Icons-png/EasiNote3C.png" <ui:ToggleSwitch x:Name="CardAutoFoldInPPTSlideShow"
Toggled="ToggleSwitchAutoFoldInEasiNote3C_Toggled"/> OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
<controls:LabeledSettingsCard x:Name="CardAutoFoldInEasiNote5C" Toggled="ToggleSwitchAutoFoldInPPTSlideShow_Toggled"/>
Header="{i18n:I18n Key=AutoFold_App_SeewoLightBoard5C}" </ui:SettingsCard>
IconSource="/Resources/Icons-png/EasiNote5C.png" </ui:SettingsExpander>
Toggled="ToggleSwitchAutoFoldInEasiNote5C_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInSeewoPincoTeacher"
Header="{i18n:I18n Key=AutoFold_App_SeewoPinco}"
IconSource="/Resources/Icons-png/SeewoPinco.png"
Toggled="ToggleSwitchAutoFoldInSeewoPincoTeacher_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInHiteTouchPro"
Header="{i18n:I18n Key=AutoFold_App_HiteBoard}"
IconSource="/Resources/Icons-png/HiteBoard.png"
Toggled="ToggleSwitchAutoFoldInHiteTouchPro_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInHiteCamera"
Header="{i18n:I18n Key=AutoFold_App_HiteCamera}"
IconSource="/Resources/Icons-png/HiteCamera.png"
Toggled="ToggleSwitchAutoFoldInHiteCamera_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInHiteLightBoard"
Header="{i18n:I18n Key=AutoFold_App_HiteLightBoard}"
IconSource="/Resources/Icons-png/HiteLightBoard.png"
Toggled="ToggleSwitchAutoFoldInHiteLightBoard_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInWxBoardMain"
Header="{i18n:I18n Key=AutoFold_App_WenXiangBoard}"
IconSource="/Resources/Icons-png/WenXiang.png"
Toggled="ToggleSwitchAutoFoldInWxBoardMain_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInMSWhiteboard"
Header="{i18n:I18n Key=AutoFold_App_MSWhiteboard}"
IconSource="/Resources/Icons-png/Whiteboard.png"
Toggled="ToggleSwitchAutoFoldInMSWhiteboard_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInAdmoxWhiteboard"
Header="{i18n:I18n Key=AutoFold_App_AdmoxBoard}"
IconSource="/Resources/Icons-png/AdmoxWhiteboard.png"
Toggled="ToggleSwitchAutoFoldInAdmoxWhiteboard_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInAdmoxBooth"
Header="{i18n:I18n Key=AutoFold_App_AdmoxBooth}"
IconSource="/Resources/Icons-png/AdmoxBooth.png"
Toggled="ToggleSwitchAutoFoldInAdmoxBooth_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInQPoint"
Header="{i18n:I18n Key=AutoFold_App_YiYunBoard}"
IconSource="/Resources/Icons-png/YiYunWhiteboard.png"
Toggled="ToggleSwitchAutoFoldInQPoint_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInYiYunVisualPresenter"
Header="{i18n:I18n Key=AutoFold_App_YiYunBooth}"
IconSource="/Resources/Icons-png/YiYunVisualPresenter.png"
Toggled="ToggleSwitchAutoFoldInYiYunVisualPresenter_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInMaxHubWhiteboard"
Header="{i18n:I18n Key=AutoFold_App_MaxHubBoard}"
IconSource="/Resources/Icons-png/MaxHubWhiteboard.png"
Toggled="ToggleSwitchAutoFoldInMaxHubWhiteboard_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInOldZyBoard"
Header="{i18n:I18n Key=AutoFold_OldZyBoard}"
IconSource="/Resources/Icons-png/Donview.png"
Toggled="ToggleSwitchAutoFoldInOldZyBoard_Toggled"/>
<controls:LabeledSettingsCard x:Name="CardAutoFoldInPPTSlideShow"
Header="{i18n:I18n Key=Automation_AutoFoldInPPT}"
IconSource="/Resources/Icons-png/PPTTools.png"
Toggled="ToggleSwitchAutoFoldInPPTSlideShow_Toggled"/>
<TextBlock Text="{i18n:I18n Key=AutoKill_Title}" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/> <TextBlock Text="{i18n:I18n Key=AutoKill_Title}" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
@@ -287,16 +376,13 @@
Icon="{x:Static ui:SegoeFluentIcons.Save}" Icon="{x:Static ui:SegoeFluentIcons.Save}"
Toggled="ToggleSwitchSaveFullPageStrokes_Toggled"/> Toggled="ToggleSwitchSaveFullPageStrokes_Toggled"/>
<ui:SettingsExpander x:Name="ExpanderFloatingWindowInterceptor" <TextBlock Text="悬浮窗拦截" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
Header="启用悬浮窗拦截"
<ui:SettingsExpander Header="希沃"
d:IsExpanded="True"> d:IsExpanded="True">
<ui:SettingsExpander.HeaderIcon> <ui:SettingsExpander.HeaderIcon>
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Shield}"/> <ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
</ui:SettingsExpander.HeaderIcon> </ui:SettingsExpander.HeaderIcon>
<ui:ToggleSwitch x:Name="ToggleSwitchFloatingWindowInterceptorEnabled"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchFloatingWindowInterceptorEnabled_Toggled"/>
<ui:SettingsExpander.Items> <ui:SettingsExpander.Items>
<ui:SettingsCard Header="{i18n:I18n Key=FloatingInterceptor_App_SeewoBoard3}"> <ui:SettingsCard Header="{i18n:I18n Key=FloatingInterceptor_App_SeewoBoard3}">
<ui:SettingsCard.HeaderIcon> <ui:SettingsCard.HeaderIcon>
@@ -352,6 +438,33 @@
OffContent="{DynamicResource Common_Off}" OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchSeewoPPTFloating_Toggled"/> Toggled="ToggleSwitchSeewoPPTFloating_Toggled"/>
</ui:SettingsCard> </ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=FloatingInterceptor_App_SeewoDesktopAnnotation}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/SeewoPinco.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="ToggleSwitchSeewoDesktopAnnotationFloating"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchSeewoDesktopAnnotationFloating_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=FloatingInterceptor_App_SeewoDesktopSideBar}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/SeewoPinco.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="ToggleSwitchSeewoDesktopSideBarFloating"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchSeewoDesktopSideBarFloating_Toggled"/>
</ui:SettingsCard>
</ui:SettingsExpander.Items>
</ui:SettingsExpander>
<ui:SettingsExpander Header="其他"
d:IsExpanded="True">
<ui:SettingsExpander.HeaderIcon>
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
</ui:SettingsExpander.HeaderIcon>
<ui:SettingsExpander.Items>
<ui:SettingsCard Header="{i18n:I18n Key=FloatingInterceptor_App_AiClass}"> <ui:SettingsCard Header="{i18n:I18n Key=FloatingInterceptor_App_AiClass}">
<ui:SettingsCard.HeaderIcon> <ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/AiClass.png"/> <ui:ImageIcon Source="/Resources/Icons-png/AiClass.png"/>
@@ -397,24 +510,6 @@
OffContent="{DynamicResource Common_Off}" OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchIntelligentClassFloating_Toggled"/> Toggled="ToggleSwitchIntelligentClassFloating_Toggled"/>
</ui:SettingsCard> </ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=FloatingInterceptor_App_SeewoDesktopAnnotation}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/Seewo2Annotation.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="ToggleSwitchSeewoDesktopAnnotationFloating"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchSeewoDesktopAnnotationFloating_Toggled"/>
</ui:SettingsCard>
<ui:SettingsCard Header="{i18n:I18n Key=FloatingInterceptor_App_SeewoDesktopSideBar}">
<ui:SettingsCard.HeaderIcon>
<ui:ImageIcon Source="/Resources/Icons-png/Seewo2Annotation.png"/>
</ui:SettingsCard.HeaderIcon>
<ui:ToggleSwitch x:Name="ToggleSwitchSeewoDesktopSideBarFloating"
OnContent="{DynamicResource Common_On}"
OffContent="{DynamicResource Common_Off}"
Toggled="ToggleSwitchSeewoDesktopSideBarFloating_Toggled"/>
</ui:SettingsCard>
</ui:SettingsExpander.Items> </ui:SettingsExpander.Items>
</ui:SettingsExpander> </ui:SettingsExpander>
@@ -37,7 +37,6 @@ namespace Ink_Canvas.Windows.SettingsViews.Pages
var auto = SettingsManager.Settings.Automation; var auto = SettingsManager.Settings.Automation;
CardAutoFoldInEasiNote.IsOn = auto.IsAutoFoldInEasiNote; CardAutoFoldInEasiNote.IsOn = auto.IsAutoFoldInEasiNote;
ExpanderAutoFoldInEasiNote.IsExpanded = auto.IsAutoFoldInEasiNote;
CardAutoFoldInEasiCamera.IsOn = auto.IsAutoFoldInEasiCamera; CardAutoFoldInEasiCamera.IsOn = auto.IsAutoFoldInEasiCamera;
CardAutoFoldInEasiNote3.IsOn = auto.IsAutoFoldInEasiNote3; CardAutoFoldInEasiNote3.IsOn = auto.IsAutoFoldInEasiNote3;
CardAutoFoldInEasiNote3C.IsOn = auto.IsAutoFoldInEasiNote3C; CardAutoFoldInEasiNote3C.IsOn = auto.IsAutoFoldInEasiNote3C;
@@ -96,8 +95,6 @@ namespace Ink_Canvas.Windows.SettingsViews.Pages
SideControlMinimumAutomationSlider.Value = auto.MinimumAutomationStrokeNumber; SideControlMinimumAutomationSlider.Value = auto.MinimumAutomationStrokeNumber;
CardSaveFullPageStrokes.IsOn = auto.IsSaveFullPageStrokes; CardSaveFullPageStrokes.IsOn = auto.IsSaveFullPageStrokes;
ToggleSwitchFloatingWindowInterceptorEnabled.IsOn = auto.FloatingWindowInterceptor.IsEnabled;
ExpanderFloatingWindowInterceptor.IsExpanded = auto.FloatingWindowInterceptor.IsEnabled;
if (auto.FloatingWindowInterceptor.InterceptRules != null) if (auto.FloatingWindowInterceptor.InterceptRules != null)
{ {
ToggleSwitchSeewoWhiteboard3Floating.IsOn = auto.FloatingWindowInterceptor.InterceptRules.ContainsKey("SeewoWhiteboard3Floating") && auto.FloatingWindowInterceptor.InterceptRules["SeewoWhiteboard3Floating"]; ToggleSwitchSeewoWhiteboard3Floating.IsOn = auto.FloatingWindowInterceptor.InterceptRules.ContainsKey("SeewoWhiteboard3Floating") && auto.FloatingWindowInterceptor.InterceptRules["SeewoWhiteboard3Floating"];
@@ -115,6 +112,8 @@ namespace Ink_Canvas.Windows.SettingsViews.Pages
ToggleSwitchSeewoDesktopSideBarFloating.IsOn = auto.FloatingWindowInterceptor.InterceptRules.ContainsKey("SeewoDesktopSideBarFloating") && auto.FloatingWindowInterceptor.InterceptRules["SeewoDesktopSideBarFloating"]; ToggleSwitchSeewoDesktopSideBarFloating.IsOn = auto.FloatingWindowInterceptor.InterceptRules.ContainsKey("SeewoDesktopSideBarFloating") && auto.FloatingWindowInterceptor.InterceptRules["SeewoDesktopSideBarFloating"];
} }
UpdateFloatingWindowInterceptorEnabled();
_isLoaded = true; _isLoaded = true;
} }
@@ -124,7 +123,6 @@ namespace Ink_Canvas.Windows.SettingsViews.Pages
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
SettingsManager.Settings.Automation.IsAutoFoldInEasiNote = CardAutoFoldInEasiNote.IsOn; SettingsManager.Settings.Automation.IsAutoFoldInEasiNote = CardAutoFoldInEasiNote.IsOn;
ExpanderAutoFoldInEasiNote.IsExpanded = CardAutoFoldInEasiNote.IsOn;
SettingsManager.SaveSettingsToFile(); SettingsManager.SaveSettingsToFile();
GetMainWindow()?.StartOrStoptimerCheckAutoFold(); GetMainWindow()?.StartOrStoptimerCheckAutoFold();
} }
@@ -476,16 +474,28 @@ namespace Ink_Canvas.Windows.SettingsViews.Pages
#region Floating Window Interceptor #region Floating Window Interceptor
private void ToggleSwitchFloatingWindowInterceptorEnabled_Toggled(object sender, RoutedEventArgs e) private void UpdateFloatingWindowInterceptorEnabled()
{ {
if (!_isLoaded) return;
var mw = GetMainWindow(); var mw = GetMainWindow();
if (mw == null) return; if (mw == null) return;
SettingsManager.Settings.Automation.FloatingWindowInterceptor.IsEnabled = ToggleSwitchFloatingWindowInterceptorEnabled.IsOn; var auto = SettingsManager.Settings.Automation;
ExpanderFloatingWindowInterceptor.IsExpanded = ToggleSwitchFloatingWindowInterceptorEnabled.IsOn; bool anyOn = ToggleSwitchSeewoWhiteboard3Floating.IsOn
|| ToggleSwitchSeewoWhiteboard5Floating.IsOn
|| ToggleSwitchSeewoWhiteboard5CFloating.IsOn
|| ToggleSwitchSeewoPincoSideBarFloating.IsOn
|| ToggleSwitchSeewoPincoDrawingFloating.IsOn
|| ToggleSwitchSeewoPPTFloating.IsOn
|| ToggleSwitchAiClassFloating.IsOn
|| ToggleSwitchHiteAnnotationFloating.IsOn
|| ToggleSwitchChangYanFloating.IsOn
|| ToggleSwitchChangYanPptFloating.IsOn
|| ToggleSwitchIntelligentClassFloating.IsOn
|| ToggleSwitchSeewoDesktopAnnotationFloating.IsOn
|| ToggleSwitchSeewoDesktopSideBarFloating.IsOn;
auto.FloatingWindowInterceptor.IsEnabled = anyOn;
if (mw._floatingWindowInterceptorManager != null) if (mw._floatingWindowInterceptorManager != null)
{ {
if (SettingsManager.Settings.Automation.FloatingWindowInterceptor.IsEnabled) if (anyOn)
mw._floatingWindowInterceptorManager.Start(); mw._floatingWindowInterceptorManager.Start();
else else
mw._floatingWindowInterceptorManager.Stop(); mw._floatingWindowInterceptorManager.Stop();
@@ -497,78 +507,91 @@ namespace Ink_Canvas.Windows.SettingsViews.Pages
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoWhiteboard3Floating, ToggleSwitchSeewoWhiteboard3Floating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoWhiteboard3Floating, ToggleSwitchSeewoWhiteboard3Floating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchSeewoWhiteboard5Floating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchSeewoWhiteboard5Floating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoWhiteboard5Floating, ToggleSwitchSeewoWhiteboard5Floating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoWhiteboard5Floating, ToggleSwitchSeewoWhiteboard5Floating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchSeewoWhiteboard5CFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchSeewoWhiteboard5CFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoWhiteboard5CFloating, ToggleSwitchSeewoWhiteboard5CFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoWhiteboard5CFloating, ToggleSwitchSeewoWhiteboard5CFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchSeewoPincoSideBarFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchSeewoPincoSideBarFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoPincoSideBarFloating, ToggleSwitchSeewoPincoSideBarFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoPincoSideBarFloating, ToggleSwitchSeewoPincoSideBarFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchSeewoPincoDrawingFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchSeewoPincoDrawingFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoPincoDrawingFloating, ToggleSwitchSeewoPincoDrawingFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoPincoDrawingFloating, ToggleSwitchSeewoPincoDrawingFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchSeewoPPTFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchSeewoPPTFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoPPTFloating, ToggleSwitchSeewoPPTFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoPPTFloating, ToggleSwitchSeewoPPTFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchAiClassFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchAiClassFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.AiClassFloating, ToggleSwitchAiClassFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.AiClassFloating, ToggleSwitchAiClassFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchHiteAnnotationFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchHiteAnnotationFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.HiteAnnotationFloating, ToggleSwitchHiteAnnotationFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.HiteAnnotationFloating, ToggleSwitchHiteAnnotationFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchChangYanFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchChangYanFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.ChangYanFloating, ToggleSwitchChangYanFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.ChangYanFloating, ToggleSwitchChangYanFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchChangYanPptFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchChangYanPptFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.ChangYanPptFloating, ToggleSwitchChangYanPptFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.ChangYanPptFloating, ToggleSwitchChangYanPptFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchIntelligentClassFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchIntelligentClassFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.IntelligentClassFloating, ToggleSwitchIntelligentClassFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.IntelligentClassFloating, ToggleSwitchIntelligentClassFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchSeewoDesktopAnnotationFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchSeewoDesktopAnnotationFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoDesktopAnnotationFloating, ToggleSwitchSeewoDesktopAnnotationFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoDesktopAnnotationFloating, ToggleSwitchSeewoDesktopAnnotationFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
private void ToggleSwitchSeewoDesktopSideBarFloating_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchSeewoDesktopSideBarFloating_Toggled(object sender, RoutedEventArgs e)
{ {
if (!_isLoaded) return; if (!_isLoaded) return;
GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoDesktopSideBarFloating, ToggleSwitchSeewoDesktopSideBarFloating.IsOn); GetMainWindow()?.SetInterceptRule(FloatingWindowInterceptor.InterceptType.SeewoDesktopSideBarFloating, ToggleSwitchSeewoDesktopSideBarFloating.IsOn);
UpdateFloatingWindowInterceptorEnabled();
} }
#endregion #endregion
@@ -186,6 +186,37 @@
</ui:NavigationViewItem.MenuItems> </ui:NavigationViewItem.MenuItems>
</ui:NavigationViewItem> </ui:NavigationViewItem>
<!-- 画板设置 -->
<ui:NavigationViewItem
x:Name="CanvasPageItem"
Content="画板"
SelectsOnInvoked="False"
ToolTipService.ToolTip="画板与墨迹设置">
<ui:NavigationViewItem.Icon>
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
</ui:NavigationViewItem.Icon>
<ui:NavigationViewItem.MenuItems>
<ui:NavigationViewItem
x:Name="CanvasSubPageItem"
Content="画板"
Tag="CanvasPage"
ToolTipService.ToolTip="画板设置">
<ui:NavigationViewItem.Icon>
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
</ui:NavigationViewItem.Icon>
</ui:NavigationViewItem>
<ui:NavigationViewItem
x:Name="InkRecognitionPageItem"
Content="墨迹纠正"
Tag="InkRecognitionPage"
ToolTipService.ToolTip="墨迹纠正设置">
<ui:NavigationViewItem.Icon>
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Draw}"/>
</ui:NavigationViewItem.Icon>
</ui:NavigationViewItem>
</ui:NavigationViewItem.MenuItems>
</ui:NavigationViewItem>
<!-- PowerPoint --> <!-- PowerPoint -->
<ui:NavigationViewItem <ui:NavigationViewItem
x:Name="PowerPointPageItem" x:Name="PowerPointPageItem"
@@ -241,37 +272,6 @@
</ui:NavigationViewItem.Icon> </ui:NavigationViewItem.Icon>
</ui:NavigationViewItem> </ui:NavigationViewItem>
<!-- 画板设置 -->
<ui:NavigationViewItem
x:Name="CanvasPageItem"
Content="画板"
SelectsOnInvoked="False"
ToolTipService.ToolTip="画板与墨迹设置">
<ui:NavigationViewItem.Icon>
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
</ui:NavigationViewItem.Icon>
<ui:NavigationViewItem.MenuItems>
<ui:NavigationViewItem
x:Name="CanvasSubPageItem"
Content="画板"
Tag="CanvasPage"
ToolTipService.ToolTip="画板设置">
<ui:NavigationViewItem.Icon>
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
</ui:NavigationViewItem.Icon>
</ui:NavigationViewItem>
<ui:NavigationViewItem
x:Name="InkRecognitionPageItem"
Content="墨迹纠正"
Tag="InkRecognitionPage"
ToolTipService.ToolTip="墨迹纠正设置">
<ui:NavigationViewItem.Icon>
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Draw}"/>
</ui:NavigationViewItem.Icon>
</ui:NavigationViewItem>
</ui:NavigationViewItem.MenuItems>
</ui:NavigationViewItem>
<!-- 随机点名 --> <!-- 随机点名 -->
<ui:NavigationViewItem <ui:NavigationViewItem
x:Name="RandomDrawPageItem" x:Name="RandomDrawPageItem"