diff --git a/lib/entities/media_player/widgets/media_player_widgets.dart b/lib/entities/media_player/widgets/media_player_widgets.dart index 5283da3..bb20bde 100644 --- a/lib/entities/media_player/widgets/media_player_widgets.dart +++ b/lib/entities/media_player/widgets/media_player_widgets.dart @@ -441,7 +441,7 @@ class _MediaPlayerControlsState extends State { } void _switchTo(entity) { - eventBus.fire(ServiceCallEvent(entity.domain, "turn_off", entity.entityId, null)); + HomeAssistant().sendFromPlayerId = entity.enityId; _duplicateTo(entity); } diff --git a/lib/home_assistant.class.dart b/lib/home_assistant.class.dart index 5d43977..e2efd6c 100644 --- a/lib/home_assistant.class.dart +++ b/lib/home_assistant.class.dart @@ -16,6 +16,7 @@ class HomeAssistant { HSVColor savedColor; int savedPlayerPosition; String sendToPlayerId; + String sendFromPlayerId; String fcmToken; diff --git a/lib/pages/play_media.page.dart b/lib/pages/play_media.page.dart index 7d81cfd..b1cbfac 100644 --- a/lib/pages/play_media.page.dart +++ b/lib/pages/play_media.page.dart @@ -94,6 +94,10 @@ class _PlayMediaPageState extends State { } ); HomeAssistant().sendToPlayerId = entity.entityId; + if (HomeAssistant().sendFromPlayerId != null) { + eventBus.fire(ServiceCallEvent(HomeAssistant().sendFromPlayerId.split(".")[0], "turn_off", HomeAssistant().sendFromPlayerId, null)); + HomeAssistant().sendFromPlayerId = null; + } eventBus.fire(ShowEntityPageEvent(entity: entity)); } }