Auto-select first stream sort fix

This commit is contained in:
tapframe 2026-01-18 10:39:38 +05:30
parent 301560b21a
commit 44f9aa5c35
3 changed files with 8 additions and 5 deletions

1
LibTorrent Submodule

@ -0,0 +1 @@
Subproject commit eb1c71397b8716b97fcd375fd646e96c89632a5e

1
iTorrent Submodule

@ -0,0 +1 @@
Subproject commit c27088b0ac36bf9bb30fae34dc36db1231263bfd

View file

@ -234,25 +234,26 @@ export const useStreamsScreen = () => {
return 0;
};
const allStreams: Array<{ stream: Stream; quality: number; providerPriority: number }> = [];
const allStreams: Array<{ stream: Stream; quality: number; providerPriority: number; originalIndex: number }> = [];
Object.entries(streamsData).forEach(([addonId, { streams }]) => {
const qualityFiltered = filterByQuality(streams);
const filteredStreams = filterByLanguage(qualityFiltered);
filteredStreams.forEach(stream => {
filteredStreams.forEach((stream, index) => {
const quality = getQualityNumeric(stream.name || stream.title);
const providerPriority = getProviderPriority(addonId);
allStreams.push({ stream, quality, providerPriority });
allStreams.push({ stream, quality, providerPriority, originalIndex: index });
});
});
if (allStreams.length === 0) return null;
// Sort primarily by provider priority, then respect the addon's internal order (originalIndex)
// This ensures if an addon lists 1080p before 4K, we pick 1080p
allStreams.sort((a, b) => {
if (a.quality !== b.quality) return b.quality - a.quality;
if (a.providerPriority !== b.providerPriority) return b.providerPriority - a.providerPriority;
return 0;
return a.originalIndex - b.originalIndex;
});
logger.log(