From 543c7df3e013d33c01977ed480681155c1b3e45f Mon Sep 17 00:00:00 2001 From: karwosts <32912880+karwosts@users.noreply.github.com> Date: Tue, 28 Jan 2025 22:23:27 -0800 Subject: [PATCH] Keyboard accessible menus in hass-tabs-subpage-data-table (#23927) --- src/layouts/hass-tabs-subpage-data-table.ts | 43 +++++++++++---------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/src/layouts/hass-tabs-subpage-data-table.ts b/src/layouts/hass-tabs-subpage-data-table.ts index 1fffe0ad5f..fed2ea2275 100644 --- a/src/layouts/hass-tabs-subpage-data-table.ts +++ b/src/layouts/hass-tabs-subpage-data-table.ts @@ -355,7 +355,7 @@ export class HaTabsSubpageDataTable extends KeyboardShortcutMixin(LitElement) { >
${localize("ui.components.subpage-data-table.select_all")} @@ -363,7 +363,7 @@ export class HaTabsSubpageDataTable extends KeyboardShortcutMixin(LitElement) {
${localize( @@ -374,7 +374,7 @@ export class HaTabsSubpageDataTable extends KeyboardShortcutMixin(LitElement) {
${localize( @@ -500,7 +500,7 @@ export class HaTabsSubpageDataTable extends KeyboardShortcutMixin(LitElement) { ? html` @@ -511,7 +511,7 @@ export class HaTabsSubpageDataTable extends KeyboardShortcutMixin(LitElement) { )} @@ -519,7 +519,7 @@ export class HaTabsSubpageDataTable extends KeyboardShortcutMixin(LitElement) { { + this._setGroupColumn(item.value); + }; private _setGroupColumn(columnId: string) { this._groupColumn = columnId; @@ -665,30 +668,30 @@ export class HaTabsSubpageDataTable extends KeyboardShortcutMixin(LitElement) { }); } - private _collapseAllGroups() { + private _collapseAllGroups = () => { this._dataTable.collapseAllGroups(); - } + }; - private _expandAllGroups() { + private _expandAllGroups = () => { this._dataTable.expandAllGroups(); - } + }; private _enableSelectMode() { this._selectMode = true; } - private _disableSelectMode() { + private _disableSelectMode = () => { this._selectMode = false; this._dataTable.clearSelection(); - } + }; - private _selectAll() { + private _selectAll = () => { this._dataTable.selectAll(); - } + }; - private _selectNone() { + private _selectNone = () => { this._dataTable.clearSelection(); - } + }; private _handleSearchChange(ev: CustomEvent) { if (this.filter === ev.detail.value) {