diff --git a/CaddyManager/Components/Pages/Caddy/CaddyReverseProxies/CaddyReverseProxiesPage.razor b/CaddyManager/Components/Pages/Caddy/CaddyReverseProxies/CaddyReverseProxiesPage.razor index f9e95e0..3fbd90a 100644 --- a/CaddyManager/Components/Pages/Caddy/CaddyReverseProxies/CaddyReverseProxiesPage.razor +++ b/CaddyManager/Components/Pages/Caddy/CaddyReverseProxies/CaddyReverseProxiesPage.razor @@ -21,7 +21,8 @@ + AdornmentIcon="@(string.IsNullOrWhiteSpace(_debouncedText) ? Icons.Material.Filled.Search : Icons.Material.Filled.Close)" + OnAdornmentClick="HandleSearchBarAdornmentClick" /> diff --git a/CaddyManager/Components/Pages/Caddy/CaddyReverseProxies/CaddyReverseProxiesPage.razor.cs b/CaddyManager/Components/Pages/Caddy/CaddyReverseProxies/CaddyReverseProxiesPage.razor.cs index bb2286d..48a4a84 100644 --- a/CaddyManager/Components/Pages/Caddy/CaddyReverseProxies/CaddyReverseProxiesPage.razor.cs +++ b/CaddyManager/Components/Pages/Caddy/CaddyReverseProxies/CaddyReverseProxiesPage.razor.cs @@ -144,4 +144,18 @@ public partial class CaddyReverseProxiesPage : ComponentBase // Simply refresh the page with the new debounced text Refresh(); } + + /// + /// Handle the click event for the search bar adornment. If the debounced text is empty, then simply refresh + /// to have the search be effective, otherwise, clear the debounced text to reset the search. + /// + private void HandleSearchBarAdornmentClick() + { + if (!string.IsNullOrWhiteSpace(_debouncedText)) + { + _debouncedText = string.Empty; + } + + Refresh(); + } } \ No newline at end of file