From b9fca6f03dcba7cdfdd3f1d425cc5090e39f152d Mon Sep 17 00:00:00 2001
From: uye <99072975+ABA2396@users.noreply.github.com>
Date: Mon, 27 Apr 2026 00:30:01 +0800
Subject: [PATCH] =?UTF-8?q?chore:=20=E8=BF=9E=E6=8E=A5=E6=96=B9=E5=BC=8F?=
=?UTF-8?q?=E4=BD=BF=E7=94=A8=20PC=20=E7=AB=AF=E6=97=B6=E7=A6=81=E7=94=A8?=
=?UTF-8?q?=E4=B8=8D=E6=94=AF=E6=8C=81=E7=9A=84=E5=AE=8C=E6=88=90=E5=90=8E?=
=?UTF-8?q?=E6=93=8D=E4=BD=9C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/MaaWpfGui/Models/PostActionSetting.cs | 53 ++++++++++++++++---
.../TaskQueue/PostActionUserControl.xaml | 4 +-
2 files changed, 47 insertions(+), 10 deletions(-)
diff --git a/src/MaaWpfGui/Models/PostActionSetting.cs b/src/MaaWpfGui/Models/PostActionSetting.cs
index 0aa3291f89..d79072e021 100644
--- a/src/MaaWpfGui/Models/PostActionSetting.cs
+++ b/src/MaaWpfGui/Models/PostActionSetting.cs
@@ -122,6 +122,11 @@ public class PostActionSetting : PropertyChangedBase
private bool _backToAndroidHome;
+ ///
+ /// Gets a value indicating whether AttachWindow 模式支持 Android 侧后处理动作。
+ ///
+ public bool AndroidControlPostActionsEnabled => !_exitEmulator && !ConnectSettingsUserControlModel.Instance.UseAttachWindow;
+
public bool BackToAndroidHome
{
get => _backToAndroidHome;
@@ -163,6 +168,8 @@ public class PostActionSetting : PropertyChangedBase
return;
}
+ NotifyOfPropertyChange(nameof(AndroidControlPostActionsEnabled));
+
if (value)
{
ExitArknights = false;
@@ -426,22 +433,51 @@ public class PostActionSetting : PropertyChangedBase
Shutdown = _postActions.HasFlag(PostActions.Shutdown);
Sleep = _postActions.HasFlag(PostActions.Sleep);
Once = false;
- ClearExitEmulatorForAttachWindow();
+ ClearUnsupportedPostActionsForAttachWindow();
}
///
- /// PC 端不支持退出模拟器:移除已保存的该标志,且不触发「取消如果没有其他 MAA」的联动。
+ /// PC 端(窗口绑定)不支持 ADB 侧后处理动作:移除已保存的相关标志,且不触发额外联动。
///
- private void ClearExitEmulatorForAttachWindow()
+ private void ClearUnsupportedPostActionsForAttachWindow()
{
- if (!ConnectSettingsUserControlModel.Instance.UseAttachWindow || !_exitEmulator)
+ if (!ConnectSettingsUserControlModel.Instance.UseAttachWindow)
{
return;
}
- _exitEmulator = false;
- _postActions &= ~PostActions.ExitEmulator;
- NotifyOfPropertyChange(nameof(ExitEmulator));
+ var changed = false;
+
+ if (_backToAndroidHome)
+ {
+ _backToAndroidHome = false;
+ _postActions &= ~PostActions.BackToAndroidHome;
+ NotifyOfPropertyChange(nameof(BackToAndroidHome));
+ changed = true;
+ }
+
+ if (_exitArknights)
+ {
+ _exitArknights = false;
+ _postActions &= ~PostActions.ExitArknights;
+ NotifyOfPropertyChange(nameof(ExitArknights));
+ changed = true;
+ }
+
+ if (_exitEmulator)
+ {
+ _exitEmulator = false;
+ _postActions &= ~PostActions.ExitEmulator;
+ NotifyOfPropertyChange(nameof(ExitEmulator));
+ changed = true;
+ }
+
+ if (!changed)
+ {
+ return;
+ }
+
+ NotifyOfPropertyChange(nameof(AndroidControlPostActionsEnabled));
RefreshDescription();
SaveActions();
}
@@ -452,8 +488,9 @@ public class PostActionSetting : PropertyChangedBase
{
if (e.PropertyName is nameof(ConnectSettingsUserControlModel.ConnectConfig) or nameof(ConnectSettingsUserControlModel.UseAttachWindow))
{
+ NotifyOfPropertyChange(nameof(AndroidControlPostActionsEnabled));
NotifyOfPropertyChange(nameof(ExitEmulatorOptionEnabled));
- ClearExitEmulatorForAttachWindow();
+ ClearUnsupportedPostActionsForAttachWindow();
}
};
diff --git a/src/MaaWpfGui/Views/UserControl/TaskQueue/PostActionUserControl.xaml b/src/MaaWpfGui/Views/UserControl/TaskQueue/PostActionUserControl.xaml
index ad5cae396c..790cacd595 100644
--- a/src/MaaWpfGui/Views/UserControl/TaskQueue/PostActionUserControl.xaml
+++ b/src/MaaWpfGui/Views/UserControl/TaskQueue/PostActionUserControl.xaml
@@ -32,14 +32,14 @@