mirror of
https://github.com/home-assistant/frontend.git
synced 2025-07-25 18:26:35 +00:00
Fix menus in Todo list for Keyboard (#24054)
This commit is contained in:
parent
64a968543b
commit
077f5efe7e
@ -1,4 +1,5 @@
|
|||||||
import "@material/mwc-list/mwc-list";
|
import "@material/mwc-list/mwc-list";
|
||||||
|
import type { ActionDetail } from "@material/mwc-list/mwc-list-foundation";
|
||||||
import type { List } from "@material/mwc-list/mwc-list";
|
import type { List } from "@material/mwc-list/mwc-list";
|
||||||
import {
|
import {
|
||||||
mdiClock,
|
mdiClock,
|
||||||
@ -286,15 +287,16 @@ export class HuiTodoListCard extends LitElement implements LovelaceCard {
|
|||||||
this._todoListSupportsFeature(
|
this._todoListSupportsFeature(
|
||||||
TodoListEntityFeature.MOVE_TODO_ITEM
|
TodoListEntityFeature.MOVE_TODO_ITEM
|
||||||
)
|
)
|
||||||
? html`<ha-button-menu @closed=${stopPropagation} fixed>
|
? html`<ha-button-menu
|
||||||
|
@closed=${stopPropagation}
|
||||||
|
fixed
|
||||||
|
@action=${this._handlePrimaryMenuAction}
|
||||||
|
>
|
||||||
<ha-icon-button
|
<ha-icon-button
|
||||||
slot="trigger"
|
slot="trigger"
|
||||||
.path=${mdiDotsVertical}
|
.path=${mdiDotsVertical}
|
||||||
></ha-icon-button>
|
></ha-icon-button>
|
||||||
<ha-list-item
|
<ha-list-item graphic="icon">
|
||||||
@click=${this._toggleReorder}
|
|
||||||
graphic="icon"
|
|
||||||
>
|
|
||||||
${this.hass!.localize(
|
${this.hass!.localize(
|
||||||
this._reordering
|
this._reordering
|
||||||
? "ui.panel.lovelace.cards.todo-list.exit_reorder_items"
|
? "ui.panel.lovelace.cards.todo-list.exit_reorder_items"
|
||||||
@ -330,16 +332,16 @@ export class HuiTodoListCard extends LitElement implements LovelaceCard {
|
|||||||
${this._todoListSupportsFeature(
|
${this._todoListSupportsFeature(
|
||||||
TodoListEntityFeature.DELETE_TODO_ITEM
|
TodoListEntityFeature.DELETE_TODO_ITEM
|
||||||
)
|
)
|
||||||
? html`<ha-button-menu @closed=${stopPropagation} fixed>
|
? html`<ha-button-menu
|
||||||
|
@closed=${stopPropagation}
|
||||||
|
fixed
|
||||||
|
@action=${this._handleCompletedMenuAction}
|
||||||
|
>
|
||||||
<ha-icon-button
|
<ha-icon-button
|
||||||
slot="trigger"
|
slot="trigger"
|
||||||
.path=${mdiDotsVertical}
|
.path=${mdiDotsVertical}
|
||||||
></ha-icon-button>
|
></ha-icon-button>
|
||||||
<ha-list-item
|
<ha-list-item graphic="icon" class="warning">
|
||||||
@click=${this._clearCompletedItems}
|
|
||||||
graphic="icon"
|
|
||||||
class="warning"
|
|
||||||
>
|
|
||||||
${this.hass!.localize(
|
${this.hass!.localize(
|
||||||
"ui.panel.lovelace.cards.todo-list.clear_items"
|
"ui.panel.lovelace.cards.todo-list.clear_items"
|
||||||
)}
|
)}
|
||||||
@ -548,7 +550,15 @@ export class HuiTodoListCard extends LitElement implements LovelaceCard {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private async _clearCompletedItems(): Promise<void> {
|
private _handleCompletedMenuAction(ev: CustomEvent<ActionDetail>) {
|
||||||
|
switch (ev.detail.index) {
|
||||||
|
case 0:
|
||||||
|
this._clearCompletedItems();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private _clearCompletedItems() {
|
||||||
if (!this.hass) {
|
if (!this.hass) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -603,7 +613,15 @@ export class HuiTodoListCard extends LitElement implements LovelaceCard {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private async _toggleReorder() {
|
private _handlePrimaryMenuAction(ev: CustomEvent<ActionDetail>) {
|
||||||
|
switch (ev.detail.index) {
|
||||||
|
case 0:
|
||||||
|
this._toggleReorder();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private _toggleReorder() {
|
||||||
this._reordering = !this._reordering;
|
this._reordering = !this._reordering;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user