Fix dropdown double click

This commit is contained in:
2025-02-24 02:01:15 +01:00
parent c76cabafdb
commit 06dcd9e811
2 changed files with 8 additions and 11 deletions

View File

@@ -23,7 +23,8 @@
</div> </div>
</div> </div>
<div @ref=DropdownAdd class="dropdown-container" @onfocusout=HandlerDropdownAddFocusOut tabindex="1000"> <div @ref=DropdownAdd class="dropdown-container" tabindex="1000"
@onfocusout=HandlerDropdownAddFocusOut>
<div class="dropdown-more-add @(AddButtonsVisile ? string.Empty : "invisible")"> <div class="dropdown-more-add @(AddButtonsVisile ? string.Empty : "invisible")">
<div class="drowdown-more-element"> <div class="drowdown-more-element">
@ResourcesKey.ManualAdd @ResourcesKey.ManualAdd

View File

@@ -5,7 +5,7 @@ namespace GameIdeas.BlazorApp.Shared.Components;
public partial class HeaderLayout : LayoutComponentBase public partial class HeaderLayout : LayoutComponentBase
{ {
private bool AddButtonsVisile = false; private bool AddButtonsVisile = false;
private bool AddButtonsActive = false; private DateTime AddButtonsLastOut = DateTime.Now;
private ElementReference DropdownAdd; private ElementReference DropdownAdd;
private void HandleIconClicked() private void HandleIconClicked()
@@ -15,20 +15,16 @@ public partial class HeaderLayout : LayoutComponentBase
private async Task HandleMoreAddClickedAsync() private async Task HandleMoreAddClickedAsync()
{ {
if (AddButtonsActive == true) if (DateTime.Now - AddButtonsLastOut >= TimeSpan.FromSeconds(0.2))
{ {
AddButtonsVisile = false; await DropdownAdd.FocusAsync();
AddButtonsVisile = true;
} }
else
{
AddButtonsVisile = !AddButtonsVisile;
}
await DropdownAdd.FocusAsync();
} }
private void HandlerDropdownAddFocusOut() private void HandlerDropdownAddFocusOut()
{ {
AddButtonsLastOut = DateTime.Now;
AddButtonsVisile = false; AddButtonsVisile = false;
} }
} }