From 9c775a8a24985cbba280ff1292efefe95e7df44a Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Tue, 12 Sep 2023 12:58:20 -0500 Subject: [PATCH] Set roku media player device class in constructor (#100225) --- homeassistant/components/roku/media_player.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/homeassistant/components/roku/media_player.py b/homeassistant/components/roku/media_player.py index 05f782b37c4..62a1a181459 100644 --- a/homeassistant/components/roku/media_player.py +++ b/homeassistant/components/roku/media_player.py @@ -122,6 +122,14 @@ class RokuMediaPlayer(RokuEntity, MediaPlayerEntity): | MediaPlayerEntityFeature.BROWSE_MEDIA ) + def __init__(self, coordinator: RokuDataUpdateCoordinator) -> None: + """Initialize the Roku device.""" + super().__init__(coordinator=coordinator) + if coordinator.data.info.device_type == "tv": + self._attr_device_class = MediaPlayerDeviceClass.TV + else: + self._attr_device_class = MediaPlayerDeviceClass.RECEIVER + def _media_playback_trackable(self) -> bool: """Detect if we have enough media data to track playback.""" if self.coordinator.data.media is None or self.coordinator.data.media.live: @@ -129,14 +137,6 @@ class RokuMediaPlayer(RokuEntity, MediaPlayerEntity): return self.coordinator.data.media.duration > 0 - @property - def device_class(self) -> MediaPlayerDeviceClass: - """Return the class of this device.""" - if self.coordinator.data.info.device_type == "tv": - return MediaPlayerDeviceClass.TV - - return MediaPlayerDeviceClass.RECEIVER - @property def state(self) -> MediaPlayerState | None: """Return the state of the device."""