diff --git a/src/components/ha-dialog.ts b/src/components/ha-dialog.ts
index f3995a7737..1e69ad2ac4 100644
--- a/src/components/ha-dialog.ts
+++ b/src/components/ha-dialog.ts
@@ -3,10 +3,12 @@ import { styles } from "@material/mwc-dialog/mwc-dialog.css";
import { mdiClose } from "@mdi/js";
import { css, html, TemplateResult } from "lit";
import { customElement } from "lit/decorators";
-import type { HomeAssistant } from "../types";
import { FOCUS_TARGET } from "../dialogs/make-dialog-manager";
+import type { HomeAssistant } from "../types";
import "./ha-icon-button";
+const SUPPRESS_DEFAULT_PRESS_SELECTOR = ["button"];
+
export const createCloseHeading = (
hass: HomeAssistant,
title: string | TemplateResult
@@ -32,6 +34,14 @@ export class HaDialog extends DialogBase {
return html` ${super.renderHeading()} `;
}
+ protected firstUpdated(): void {
+ super.firstUpdated();
+ this.suppressDefaultPressSelector = [
+ this.suppressDefaultPressSelector,
+ SUPPRESS_DEFAULT_PRESS_SELECTOR,
+ ].join(", ");
+ }
+
static override styles = [
styles,
css`
diff --git a/src/panels/config/entities/entity-aliases/dialog-entity-aliases.ts b/src/panels/config/entities/entity-aliases/dialog-entity-aliases.ts
index 29e3e012cc..9859bcf602 100644
--- a/src/panels/config/entities/entity-aliases/dialog-entity-aliases.ts
+++ b/src/panels/config/entities/entity-aliases/dialog-entity-aliases.ts
@@ -72,16 +72,21 @@ class DialogEntityAliases extends LitElement {
dialogInitialFocus=${index}
.index=${index}
class="flex-auto"
- label="Alias"
+ .label=${this.hass!.localize(
+ "ui.dialogs.entity_registry.editor.aliases.input_label",
+ { number: index + 1 }
+ )}
.value=${alias}
?data-last=${index === this._aliases.length - 1}
- @change=${this._editAlias}
+ @input=${this._editAlias}
+ @keydown=${this._keyDownAlias}
>
{
@@ -272,12 +273,8 @@ export class HaEntityRegistryBasicEditor extends SubscribeMixin(LitElement) {
"ui.dialogs.entity_registry.editor.aliases_section"
)}
-
- 0}
- hasMeta
- @click=${this._openAliasesSettings}
- >
+
+ 0} hasMeta>
${this.entry.aliases.length > 0
? this.hass.localize(
diff --git a/src/panels/config/entities/entity-registry-settings.ts b/src/panels/config/entities/entity-registry-settings.ts
index 9fc640993f..5a318ff9ed 100644
--- a/src/panels/config/entities/entity-registry-settings.ts
+++ b/src/panels/config/entities/entity-registry-settings.ts
@@ -807,12 +807,8 @@ export class EntityRegistrySettings extends SubscribeMixin(LitElement) {
"ui.dialogs.entity_registry.editor.aliases_section"
)}
-
- 0}
- hasMeta
- @click=${this._openAliasesSettings}
- >
+
+ 0} hasMeta>
${this.entry.aliases.length > 0
? this.hass.localize(
@@ -1015,7 +1011,8 @@ export class EntityRegistrySettings extends SubscribeMixin(LitElement) {
});
}
- private _openAliasesSettings() {
+ private _handleAliasesClicked(ev: CustomEvent) {
+ if (ev.detail.index !== 0) return;
showEntityAliasesDialog(this, {
entity: this.entry!,
updateEntry: async (updates) => {
diff --git a/src/translations/en.json b/src/translations/en.json
index ff490edd2c..df3e8b1c90 100755
--- a/src/translations/en.json
+++ b/src/translations/en.json
@@ -1003,7 +1003,8 @@
"aliases": {
"heading": "{name} aliases",
"description": "Aliases are alternative names used in voice assistants to refer to this entity.",
- "remove_alias": "Remove alias",
+ "remove_alias": "Remove alias {number}",
+ "input_label": "Alias {number}",
"save": "Save",
"add_alias": "Add alias",
"no_aliases": "No aliases have been added yet",