hassio-addon-audio feedback (#6731)

This commit is contained in:
Joakim Sørensen 2020-09-03 10:45:18 +02:00 committed by GitHub
parent 8edee32e77
commit 348ee96274
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -28,6 +28,7 @@ import { haStyle } from "../../../../src/resources/styles";
import { HomeAssistant } from "../../../../src/types";
import { suggestAddonRestart } from "../../dialogs/suggestAddonRestart";
import { hassioStyle } from "../../resources/hassio-style";
import "../../../../src/components/buttons/ha-progress-button";
@customElement("hassio-addon-audio")
class HassioAddonAudio extends LitElement {
@ -91,7 +92,9 @@ class HassioAddonAudio extends LitElement {
</paper-dropdown-menu>
</div>
<div class="card-actions">
<mwc-button @click=${this._saveSettings}>Save</mwc-button>
<ha-progress-button @click=${this._saveSettings}>
Save
</ha-progress-button>
</div>
</ha-card>
`;
@ -172,7 +175,10 @@ class HassioAddonAudio extends LitElement {
}
}
private async _saveSettings(): Promise<void> {
private async _saveSettings(ev: CustomEvent): Promise<void> {
const button = ev.target as any;
button.progress = true;
this._error = undefined;
const data: HassioAddonSetOptionParams = {
audio_input:
@ -182,12 +188,14 @@ class HassioAddonAudio extends LitElement {
};
try {
await setHassioAddonOption(this.hass, this.addon.slug, data);
if (this.addon?.state === "started") {
await suggestAddonRestart(this, this.hass, this.addon);
}
} catch {
this._error = "Failed to set addon audio device";
}
if (!this._error && this.addon?.state === "started") {
await suggestAddonRestart(this, this.hass, this.addon);
}
button.progress = false;
}
}