diff --git a/TelegramBotBase/Form/ConfirmDialog.cs b/TelegramBotBase/Form/ConfirmDialog.cs
index 6a3013f..a5ce824 100644
--- a/TelegramBotBase/Form/ConfirmDialog.cs
+++ b/TelegramBotBase/Form/ConfirmDialog.cs
@@ -15,6 +15,11 @@ namespace TelegramBotBase.Form
{
public String Message { get; set; }
+ ///
+ /// Automatically close form on button click
+ ///
+ public bool AutoCloseOnClick { get; set; } = true;
+
public List Buttons { get; set; }
private EventHandlerList __Events { get; set; } = new EventHandlerList();
@@ -49,6 +54,12 @@ namespace TelegramBotBase.Form
public override async Task Action(MessageResult message)
{
+ if (message.Handled)
+ return;
+
+ if (!message.IsFirstHandler)
+ return;
+
var call = message.GetData();
if (call == null)
return;
@@ -67,6 +78,9 @@ namespace TelegramBotBase.Form
}
OnButtonClicked(new ButtonClickedEventArgs(button));
+
+ if (AutoCloseOnClick)
+ await CloseForm();
}