From 55e75e80d240f839e2d54ff47d182d29fc7e359c Mon Sep 17 00:00:00 2001 From: Simon Lamon <32477463+silamon@users.noreply.github.com> Date: Mon, 3 Nov 2025 16:26:42 +0100 Subject: [PATCH] Fixes in backup overflow (#27745) Co-authored-by: Bram Kragten --- .../config/backup/ha-config-backup-backups.ts | 25 ++++++++----------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/src/panels/config/backup/ha-config-backup-backups.ts b/src/panels/config/backup/ha-config-backup-backups.ts index 67a2965050..382abe6a1f 100644 --- a/src/panels/config/backup/ha-config-backup-backups.ts +++ b/src/panels/config/backup/ha-config-backup-backups.ts @@ -125,8 +125,6 @@ class HaConfigBackupBackups extends SubscribeMixin(LitElement) { @query("#overflow-menu") private _overflowMenu?: HaMdMenu; - private _overflowBackup?: BackupContent; - public connectedCallback() { super.connectedCallback(); window.addEventListener("location-changed", this._locationChanged); @@ -262,7 +260,7 @@ class HaConfigBackupBackups extends SubscribeMixin(LitElement) { type: "overflow-menu", template: (backup) => html` { - if (!this._overflowBackup) { + private async _downloadBackup(ev): Promise { + const backup = ev.parentElement.anchorElement.backup; + if (!backup) { return; } - downloadBackup(this.hass, this, this._overflowBackup, this.config); + downloadBackup(this.hass, this, backup, this.config); } - private async _deleteBackup(): Promise { - if (!this._overflowBackup) { + private async _deleteBackup(ev): Promise { + const backup = ev.parentElement.anchorElement.backup; + if (!backup) { return; } @@ -596,11 +595,9 @@ class HaConfigBackupBackups extends SubscribeMixin(LitElement) { } try { - await deleteBackup(this.hass, this._overflowBackup.backup_id); - if (this._selected.includes(this._overflowBackup.backup_id)) { - this._selected = this._selected.filter( - (id) => id !== this._overflowBackup!.backup_id - ); + await deleteBackup(this.hass, backup.backup_id); + if (this._selected.includes(backup.backup_id)) { + this._selected = this._selected.filter((id) => id !== backup.backup_id); } } catch (err: any) { showAlertDialog(this, {