Add restart action to config dashboard overflow menu (#15544)

This commit is contained in:
Paul Bottein 2023-02-22 17:00:02 +01:00 committed by GitHub
parent 91493e109e
commit 2c61c960bc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 24 additions and 7 deletions

View File

@ -1,5 +1,5 @@
import { RequestSelectedDetail } from "@material/mwc-list/mwc-list-item"; import { RequestSelectedDetail } from "@material/mwc-list/mwc-list-item";
import { mdiDotsVertical, mdiRefresh } from "@mdi/js"; import { mdiDotsVertical, mdiUpdate } from "@mdi/js";
import { HassEntities } from "home-assistant-js-websocket"; import { HassEntities } from "home-assistant-js-websocket";
import { css, html, LitElement, TemplateResult } from "lit"; import { css, html, LitElement, TemplateResult } from "lit";
import { customElement, property, state } from "lit/decorators"; import { customElement, property, state } from "lit/decorators";
@ -66,7 +66,7 @@ class HaConfigSectionUpdates extends LitElement {
.label=${this.hass.localize( .label=${this.hass.localize(
"ui.panel.config.updates.check_updates" "ui.panel.config.updates.check_updates"
)} )}
.path=${mdiRefresh} .path=${mdiUpdate}
@click=${this._checkUpdates} @click=${this._checkUpdates}
></ha-icon-button> ></ha-icon-button>
<ha-button-menu corner="BOTTOM_START" multi> <ha-button-menu corner="BOTTOM_START" multi>

View File

@ -1,6 +1,11 @@
import type { ActionDetail } from "@material/mwc-list"; import type { ActionDetail } from "@material/mwc-list";
import "@material/mwc-list/mwc-list-item"; import {
import { mdiCloudLock, mdiDotsVertical, mdiMagnify } from "@mdi/js"; mdiCloudLock,
mdiDotsVertical,
mdiMagnify,
mdiPower,
mdiUpdate,
} from "@mdi/js";
import "@polymer/app-layout/app-header/app-header"; import "@polymer/app-layout/app-header/app-header";
import "@polymer/app-layout/app-toolbar/app-toolbar"; import "@polymer/app-layout/app-toolbar/app-toolbar";
import { HassEntities, UnsubscribeFunc } from "home-assistant-js-websocket"; import { HassEntities, UnsubscribeFunc } from "home-assistant-js-websocket";
@ -19,6 +24,7 @@ import "../../../components/ha-button-menu";
import "../../../components/ha-card"; import "../../../components/ha-card";
import "../../../components/ha-icon-button"; import "../../../components/ha-icon-button";
import "../../../components/ha-icon-next"; import "../../../components/ha-icon-next";
import "../../../components/ha-list-item";
import "../../../components/ha-menu-button"; import "../../../components/ha-menu-button";
import "../../../components/ha-svg-icon"; import "../../../components/ha-svg-icon";
import "../../../components/ha-tip"; import "../../../components/ha-tip";
@ -34,6 +40,7 @@ import {
UpdateEntity, UpdateEntity,
} from "../../../data/update"; } from "../../../data/update";
import { showQuickBar } from "../../../dialogs/quick-bar/show-dialog-quick-bar"; import { showQuickBar } from "../../../dialogs/quick-bar/show-dialog-quick-bar";
import { showRestartDialog } from "../../../dialogs/restart/show-dialog-restart";
import "../../../layouts/ha-app-layout"; import "../../../layouts/ha-app-layout";
import { PageNavigation } from "../../../layouts/hass-tabs-subpage"; import { PageNavigation } from "../../../layouts/hass-tabs-subpage";
import { SubscribeMixin } from "../../../mixins/subscribe-mixin"; import { SubscribeMixin } from "../../../mixins/subscribe-mixin";
@ -190,7 +197,6 @@ class HaConfigDashboard extends SubscribeMixin(LitElement) {
<ha-button-menu <ha-button-menu
corner="BOTTOM_START" corner="BOTTOM_START"
@action=${this._handleMenuAction} @action=${this._handleMenuAction}
activatable
> >
<ha-icon-button <ha-icon-button
slot="trigger" slot="trigger"
@ -198,9 +204,17 @@ class HaConfigDashboard extends SubscribeMixin(LitElement) {
.path=${mdiDotsVertical} .path=${mdiDotsVertical}
></ha-icon-button> ></ha-icon-button>
<mwc-list-item> <ha-list-item graphic="icon">
${this.hass.localize("ui.panel.config.updates.check_updates")} ${this.hass.localize("ui.panel.config.updates.check_updates")}
</mwc-list-item> <ha-svg-icon slot="graphic" .path=${mdiUpdate}></ha-svg-icon>
</ha-list-item>
<ha-list-item graphic="icon">
${this.hass.localize(
"ui.panel.config.system_dashboard.restart_homeassistant"
)}
<ha-svg-icon slot="graphic" .path=${mdiPower}></ha-svg-icon>
</ha-list-item>
</ha-button-menu> </ha-button-menu>
</app-toolbar> </app-toolbar>
</app-header> </app-header>
@ -312,6 +326,9 @@ class HaConfigDashboard extends SubscribeMixin(LitElement) {
case 0: case 0:
checkForEntityUpdates(this, this.hass); checkForEntityUpdates(this, this.hass);
break; break;
case 1:
showRestartDialog(this);
break;
} }
} }