AutoCleanForm detect only is active form
All checks were successful
build nuget workflow for TelegramBotBase project / Build-TelegramBotBase (x64, linux) (push) Successful in 37s
All checks were successful
build nuget workflow for TelegramBotBase project / Build-TelegramBotBase (x64, linux) (push) Successful in 37s
This commit is contained in:
parent
139ccbb136
commit
07cbb8bfa4
@ -8,7 +8,7 @@ jobs:
|
||||
Build-TelegramBotBase:
|
||||
env:
|
||||
APP_PROJECT_NAME: TelegramBotBase
|
||||
PACKAGE_VERSION: "123.1.3"
|
||||
PACKAGE_VERSION: "123.1.5"
|
||||
strategy:
|
||||
matrix:
|
||||
os:
|
||||
|
||||
@ -24,7 +24,7 @@ public class AutoCleanForm : FormBase
|
||||
DeleteMode = EDeleteMode.OnEveryCall;
|
||||
DeleteSide = EDeleteSide.BotOnly;
|
||||
|
||||
Init += AutoCleanForm_Init;
|
||||
Opened += AutoCleanForm_Init;
|
||||
|
||||
Closed += AutoCleanForm_Closed;
|
||||
}
|
||||
@ -35,7 +35,7 @@ public class AutoCleanForm : FormBase
|
||||
|
||||
[SaveState] public EDeleteSide DeleteSide { get; set; }
|
||||
|
||||
private Task AutoCleanForm_Init(object sender, InitEventArgs e)
|
||||
private Task AutoCleanForm_Init(object sender, EventArgs e)
|
||||
{
|
||||
if (Device == null)
|
||||
{
|
||||
@ -70,7 +70,8 @@ public class AutoCleanForm : FormBase
|
||||
|
||||
private Task Device_MessageSent(object sender, MessageSentEventArgs e)
|
||||
{
|
||||
if (DeleteSide == EDeleteSide.UserOnly)
|
||||
if (DeleteSide == EDeleteSide.UserOnly
|
||||
|| Device.ActiveForm != this)
|
||||
{
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
@ -137,6 +138,12 @@ public class AutoCleanForm : FormBase
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
Device.MessageSent -= Device_MessageSent;
|
||||
|
||||
Device.MessageReceived -= Device_MessageReceived;
|
||||
|
||||
Device.MessageDeleted -= Device_MessageDeleted;
|
||||
|
||||
MessageCleanup().Wait();
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user