From f0995ef85e87911b9597c747be43781fc2038633 Mon Sep 17 00:00:00 2001 From: Hiroshi Horie <548776+hiroshihorie@users.noreply.github.com> Date: Fri, 3 Dec 2021 01:05:52 +0700 Subject: [PATCH] better type for TrackPublication param --- lib/src/participant/remote_participant.dart | 2 +- lib/src/publication/local_track_publication.dart | 5 ++--- lib/src/publication/remote_track_publication.dart | 4 ++-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/lib/src/participant/remote_participant.dart b/lib/src/participant/remote_participant.dart index ee014e0..35d4769 100644 --- a/lib/src/participant/remote_participant.dart +++ b/lib/src/participant/remote_participant.dart @@ -107,7 +107,7 @@ class RemoteParticipant extends Participant { } // create Track - final Track track; + final RemoteTrack track; if (pub.kind == lk_models.TrackType.AUDIO) { // audio track track = RemoteAudioTrack(pub.name, pub.source, stream, mediaTrack); diff --git a/lib/src/publication/local_track_publication.dart b/lib/src/publication/local_track_publication.dart index 7a4bbd4..891136a 100644 --- a/lib/src/publication/local_track_publication.dart +++ b/lib/src/publication/local_track_publication.dart @@ -4,7 +4,6 @@ import '../internal/events.dart'; import '../participant/local_participant.dart'; import '../proto/livekit_models.pb.dart' as lk_models; import '../track/local.dart'; -import '../track/track.dart'; import 'track_publication.dart'; class LocalTrackPublication extends TrackPublication { @@ -17,7 +16,7 @@ class LocalTrackPublication extends TrackPublication { LocalTrackPublication({ required this.participant, required lk_models.TrackInfo info, - required Track track, + required T track, }) : super(info: info) { updateTrack(track); // register dispose func @@ -28,7 +27,7 @@ class LocalTrackPublication extends TrackPublication { } @override - Future updateTrack(Track? newValue) async { + Future updateTrack(covariant T? newValue) async { final didUpdate = await super.updateTrack(newValue); if (newValue != null) { diff --git a/lib/src/publication/remote_track_publication.dart b/lib/src/publication/remote_track_publication.dart index 2649a7d..d98ad52 100644 --- a/lib/src/publication/remote_track_publication.dart +++ b/lib/src/publication/remote_track_publication.dart @@ -51,7 +51,7 @@ class RemoteTrackPublication extends TrackPublication { RemoteTrackPublication({ required this.participant, required lk_models.TrackInfo info, - Track? track, + T? track, }) : super(info: info) { // register dispose func onDispose(() async { @@ -149,7 +149,7 @@ class RemoteTrackPublication extends TrackPublication { @internal @override - Future updateTrack(Track? newValue) async { + Future updateTrack(covariant T? newValue) async { final didUpdate = await super.updateTrack(newValue); // Only listen for visibility updates if video optimization is on