From 330338afbdbde0c84ea9d1c76b2355edf4a9d040 Mon Sep 17 00:00:00 2001 From: Hiroshi Horie <548776+hiroshihorie@users.noreply.github.com> Date: Tue, 26 Oct 2021 00:44:44 +0900 Subject: [PATCH] don't disable audio tracks --- lib/src/track/remote_track_publication.dart | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/lib/src/track/remote_track_publication.dart b/lib/src/track/remote_track_publication.dart index 9e3b4db..e5ba1b1 100644 --- a/lib/src/track/remote_track_publication.dart +++ b/lib/src/track/remote_track_publication.dart @@ -104,7 +104,11 @@ class RemoteTrackPublication extends TrackPublication { _visibilities.values.firstWhereOrNull((e) => e.visible) != null; void _shouldComputeVisibilityUpdate(void _) { - // + if (isDisposed) { + logger.warning('_shouldComputeVisibilityUpdate already disposed'); + return; + } + Size maxSize(Size s1, Size s2) => Size( max(s1.width, s2.width), max(s1.height, s2.height), @@ -137,9 +141,9 @@ class RemoteTrackPublication extends TrackPublication { super.track?.dispose(); super.track = newValue; - if (newValue != null) { + if (newValue != null && newValue.kind == lk_models.TrackType.VIDEO) { // - // Attach visibility event listener + // Attach visibility event listener (if video track) // final listener = newValue.createListener(); listener.on( @@ -148,11 +152,9 @@ class RemoteTrackPublication extends TrackPublication { await listener.dispose(); // consider all views are disposed when track is null _visibilities.clear(); - // _visibilityDidUpdate?.call(null); + if (!isDisposed) _visibilityDidUpdate?.call(null); }); } - - _visibilityDidUpdate?.call(null); } }