Skip to content

Commit 67098ee

Browse files
committed
Added labels to sub filter and fixed issue with dropdown list being aria hidden
1 parent a07e682 commit 67098ee

File tree

5 files changed

+12
-18
lines changed

5 files changed

+12
-18
lines changed

src/EventLogExpert/Shared/Components/Filters/SubFilterRow.razor

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
<div class="flex-center-aligned-row px-4">
44
<div class="flex-align-center">
5-
<BooleanSelect @bind-Value="Value.ShouldCompareAny" EnabledString="OR" DisabledString="AND" IsSingleColor="true" />
5+
<BooleanSelect AriaLabel="Should Compare" @bind-Value="Value.ShouldCompareAny" EnabledString="OR" DisabledString="AND" IsSingleColor="true" />
66

7-
<ValueSelect CssClass="input filter-dropdown" T="FilterCategory" @bind-Value="Value.Data.Category" ToStringFunc="x => x.ToFullString()">
7+
<ValueSelect AriaLabel="Category" CssClass="input filter-dropdown" T="FilterCategory" @bind-Value="Value.Data.Category" ToStringFunc="x => x.ToFullString()">
88
@foreach (FilterCategory item in Enum.GetValues(typeof(FilterCategory)))
99
{
1010
if (item == FilterCategory.Xml && !FilterService.IsXmlEnabled) { continue; }

src/EventLogExpert/Shared/Components/ValueSelect.razor

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
@inherits BaseComponent<T>
44

55
<div class="dropdown-input" @onkeydown="HandleKeyDown" @onkeydown:preventDefault="_preventDefault" @ref="_selectComponent">
6-
<input aria-activedescendant="@HighlightedItem?.ItemId" aria-controls="@_itemId" aria-expanded="@IsOpen" aria-label="@AriaLabel" aria-labelledby="@AriaLabelledBy"
6+
<input aria-activedescendant="@HighlightedItem?.ItemId" aria-controls="@_itemId"
7+
aria-label="@(string.IsNullOrWhiteSpace(AriaLabelledBy) ? AriaLabel : null)" aria-labelledby="@AriaLabelledBy"
78
class="@CssClass" @oninput="OnInputChange" readonly="@(!IsInput || IsMultiSelect)" role="combobox" tabindex="0" type="text" value="@DisplayString" />
89

910
<div class="dropdown-list" id="@_itemId" role="listbox" tabindex="-1">

src/EventLogExpert/Shared/Components/ValueSelect.razor.cs

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ public sealed partial class ValueSelect<T> : BaseComponent<T>
1515
private readonly HashSet<T> _selectedValues = [];
1616

1717
private ValueSelectItem<T>? _highlightedItem;
18-
private bool _isOpen;
1918
private bool _preventDefault;
2019
private ElementReference _selectComponent;
2120

@@ -42,8 +41,6 @@ public ValueSelectItem<T>? HighlightedItem
4241
[Parameter]
4342
public bool IsMultiSelect { get; set; }
4443

45-
public string IsOpen => _isOpen.ToString().ToLower();
46-
4744
private string? DisplayString
4845
{
4946
get
@@ -90,17 +87,9 @@ public bool AddItem(ValueSelectItem<T> item)
9087

9188
public void ClearSelected() => _selectedValues.Clear();
9289

93-
public async Task CloseDropDown()
94-
{
95-
_isOpen = false;
96-
await JSRuntime.InvokeVoidAsync("closeDropdown", _selectComponent);
97-
}
90+
public async Task CloseDropDown() => await JSRuntime.InvokeVoidAsync("closeDropdown", _selectComponent);
9891

99-
public async Task OpenDropDown()
100-
{
101-
_isOpen = true;
102-
await JSRuntime.InvokeVoidAsync("openDropdown", _selectComponent);
103-
}
92+
public async Task OpenDropDown() => await JSRuntime.InvokeVoidAsync("openDropdown", _selectComponent);
10493

10594
public void RemoveItem(ValueSelectItem<T> item) => _items.Remove(item);
10695

src/EventLogExpert/Shared/Components/ValueSelectItem.razor.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,14 @@ namespace EventLogExpert.Shared.Components;
88

99
public sealed partial class ValueSelectItem<T> : IDisposable
1010
{
11-
private bool _isSelected = false;
11+
private bool _isSelected;
1212
private ValueSelect<T> _parent = null!;
1313

1414
[Parameter]
1515
public RenderFragment? ChildContent { get; set; }
1616

1717
[Parameter]
18-
public bool ClearItem { get; set; } = false;
18+
public bool ClearItem { get; set; }
1919

2020
[Parameter]
2121
public string CssClass { get; set; } = string.Empty;

src/EventLogExpert/wwwroot/js/dropdowns.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ window.registerDropdown = (root) => {
1010

1111
dropdown.removeAttribute("data-toggle");
1212
dropdown.setAttribute("aria-expanded", "false");
13+
dropdown.setAttribute("aria-hidden", "true");
1314

1415
dropdown.style.position = false;
1516
dropdown.style.top = false;
@@ -40,6 +41,7 @@ window.registerDropdown = (root) => {
4041

4142
dropdown.setAttribute("data-toggle", "");
4243
dropdown.setAttribute("aria-expanded", "true");
44+
dropdown.setAttribute("aria-hidden", "false");
4345

4446
scrollToSelectedItem();
4547
}
@@ -67,6 +69,7 @@ window.closeDropdown = (root) => {
6769

6870
dropdown.removeAttribute("data-toggle");
6971
dropdown.setAttribute("aria-expanded", "false");
72+
dropdown.setAttribute("aria-hidden", "true");
7073

7174
dropdown.style.position = false;
7275
dropdown.style.top = false;
@@ -87,6 +90,7 @@ window.openDropdown = (root) => {
8790

8891
dropdown.setAttribute("data-toggle", "");
8992
dropdown.setAttribute("aria-expanded", "true");
93+
dropdown.setAttribute("aria-hidden", "false");
9094

9195
scrollToSelectedItem(root);
9296
};

0 commit comments

Comments
 (0)