File tree Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -48,12 +48,16 @@ class VideoTrackRenderer extends StatefulWidget {
48
48
final rtc.RTCVideoViewObjectFit fit;
49
49
final VideoViewMirrorMode mirrorMode;
50
50
final VideoRenderMode renderMode;
51
+ final rtc.RTCVideoRenderer ? cachedRenderer;
52
+ final bool autoDisposeRenderer;
51
53
52
54
const VideoTrackRenderer (
53
55
this .track, {
54
56
this .fit = rtc.RTCVideoViewObjectFit .RTCVideoViewObjectFitContain ,
55
57
this .mirrorMode = VideoViewMirrorMode .auto,
56
58
this .renderMode = VideoRenderMode .texture,
59
+ this .autoDisposeRenderer = true ,
60
+ this .cachedRenderer,
57
61
Key ? key,
58
62
}) : super (key: key);
59
63
@@ -114,6 +118,9 @@ class _VideoTrackRendererState extends State<VideoTrackRenderer> {
114
118
@override
115
119
void initState () {
116
120
super .initState ();
121
+ if (widget.cachedRenderer != null ) {
122
+ _renderer = widget.cachedRenderer;
123
+ }
117
124
_internalKey = widget.track.addViewKey ();
118
125
if (kIsWeb) {
119
126
() async {
@@ -127,7 +134,9 @@ class _VideoTrackRendererState extends State<VideoTrackRenderer> {
127
134
void dispose () {
128
135
widget.track.removeViewKey (_internalKey);
129
136
_listener? .dispose ();
130
- disposeRenderer ();
137
+ if (widget.autoDisposeRenderer) {
138
+ disposeRenderer ();
139
+ }
131
140
super .dispose ();
132
141
}
133
142
You can’t perform that action at this time.
0 commit comments