Fix: mute Remote mute/unmute events (#54)

* fix

* format
This commit is contained in:
Hiroshi Horie
2021-12-12 14:01:58 +07:00
committed by GitHub
parent 2b88ffd5f9
commit b85ecc1588
6 changed files with 44 additions and 47 deletions
+2 -5
View File
@@ -4,7 +4,6 @@ import 'package:flutter_webrtc/flutter_webrtc.dart' as rtc;
import 'package:meta/meta.dart';
import '../exceptions.dart';
import '../internal/events.dart';
import '../logger.dart';
import '../proto/livekit_models.pb.dart' as lk_models;
import '../types.dart';
@@ -41,8 +40,7 @@ abstract class LocalTrack extends Track {
if (!Platform.isWindows) {
await stop();
}
updateMuted(true);
events.emit(TrackMuteUpdatedEvent(track: this, muted: muted));
updateMuted(true, shouldSendSignal: true);
return true;
}
@@ -54,8 +52,7 @@ abstract class LocalTrack extends Track {
await restartTrack();
}
await enable();
updateMuted(false);
events.emit(TrackMuteUpdatedEvent(track: this, muted: muted));
updateMuted(false, shouldSendSignal: true);
return true;
}
+9 -1
View File
@@ -139,7 +139,15 @@ abstract class Track extends DisposableChangeNotifier
}
@internal
void updateMuted(bool muted) => _muted = muted;
void updateMuted(bool muted, {bool shouldSendSignal = false}) {
if (_muted == muted) return;
_muted = muted;
events.emit(InternalTrackMuteUpdatedEvent(
track: this,
muted: muted,
shouldSendSignal: shouldSendSignal,
));
}
@internal
void updateMediaStreamAndTrack(