diff --git a/frontend/src/components/tables/ChannelTableStreams.jsx b/frontend/src/components/tables/ChannelTableStreams.jsx index 237f0c83..ad183e98 100644 --- a/frontend/src/components/tables/ChannelTableStreams.jsx +++ b/frontend/src/components/tables/ChannelTableStreams.jsx @@ -575,12 +575,19 @@ const ChannelStreams = ({ channel }) => { if (wasVisible && !isVideoVisible) { const meta = lastPreviewMetaRef.current; lastPreviewMetaRef.current = null; - const streamId = meta && meta.streamId; + const channelId = channelRef.current?.id; + const previewedStreamId = meta && meta.streamId; + const previewedChannelId = meta && meta.channelId; if ( - streamId != null && - (dataRef.current || []).some((s) => s.id === streamId) + previewedStreamId != null && + (dataRef.current || []).some((s) => s.id === previewedStreamId) ) { - refreshStats({ ids: [streamId] }); + refreshStats({ ids: [previewedStreamId] }); + } else if ( + previewedChannelId != null && + previewedChannelId === channelId + ) { + refreshStats(); } } }, [isVideoVisible, refreshStats]); diff --git a/frontend/src/components/tables/ChannelsTable.jsx b/frontend/src/components/tables/ChannelsTable.jsx index 05c548fd..48b84531 100644 --- a/frontend/src/components/tables/ChannelsTable.jsx +++ b/frontend/src/components/tables/ChannelsTable.jsx @@ -689,7 +689,7 @@ const ChannelsTable = ({ onReady }) => { const handleWatchStream = useCallback( (channel) => { const url = getChannelURL(channel); - showVideo(url, 'live', { name: channel.name }); + showVideo(url, 'live', { name: channel.name, channelId: channel.id }); }, [getChannelURL, showVideo] );