Skip to content

Commit c09aad4

Browse files
committed
Add more info dialog opened and closed external bus messages
The more info dialog now reports the entity it is showing over the external bus, so the companion app knows what the frontend displays.
1 parent 8a59516 commit c09aad4

2 files changed

Lines changed: 42 additions & 0 deletions

File tree

src/dialogs/more-info/ha-more-info-dialog.ts

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1031,6 +1031,32 @@ export class MoreInfoDialog extends DirtyStateProviderMixin<
10311031
this._infoEditMode = false;
10321032
this._detailsYamlMode = false;
10331033
}
1034+
1035+
if (changedProps.has("_entityId")) {
1036+
this._reportShownEntityToExternalApp(
1037+
changedProps.get("_entityId") as string | null | undefined
1038+
);
1039+
}
1040+
}
1041+
1042+
private _reportShownEntityToExternalApp(
1043+
previousEntityId: string | null | undefined
1044+
) {
1045+
const external = this.hass.auth.external;
1046+
if (!external) {
1047+
return;
1048+
}
1049+
if (this._entityId) {
1050+
external.fireMessage({
1051+
type: "more_info/opened",
1052+
payload: { entity_id: this._entityId },
1053+
});
1054+
} else if (previousEntityId) {
1055+
external.fireMessage({
1056+
type: "more_info/closed",
1057+
payload: { entity_id: previousEntityId },
1058+
});
1059+
}
10341060
}
10351061

10361062
private _entryUpdated(ev: CustomEvent<ExtEntityRegistryEntry>) {

src/external_app/external_messaging.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,20 @@ interface EMOutgoingMessageAddEntityTo extends EMMessage {
184184
};
185185
}
186186

187+
interface EMOutgoingMessageMoreInfoOpened extends EMMessage {
188+
type: "more_info/opened";
189+
payload: {
190+
entity_id: string;
191+
};
192+
}
193+
194+
interface EMOutgoingMessageMoreInfoClosed extends EMMessage {
195+
type: "more_info/closed";
196+
payload: {
197+
entity_id: string;
198+
};
199+
}
200+
187201
interface EMOutgoingMessageFocusElement extends EMMessage {
188202
type: "focus_element";
189203
payload: {
@@ -216,6 +230,8 @@ type EMOutgoingMessageWithoutAnswer =
216230
| EMOutgoingMessageHaptic
217231
| EMOutgoingMessageImportThreadCredentials
218232
| EMOutgoingMessageMatterCommission
233+
| EMOutgoingMessageMoreInfoOpened
234+
| EMOutgoingMessageMoreInfoClosed
219235
| EMOutgoingMessageSidebarShow
220236
| EMOutgoingMessageTagWrite
221237
| EMOutgoingMessageThemeUpdate

0 commit comments

Comments
 (0)