mirror of
https://github.com/tapframe/NuvioStreaming.git
synced 2026-04-20 16:22:04 +00:00
parent
6f15e104ef
commit
00cf7e696d
2 changed files with 25 additions and 10 deletions
|
|
@ -153,13 +153,18 @@ const SearchScreen = () => {
|
||||||
type: catalog.type,
|
type: catalog.type,
|
||||||
};
|
};
|
||||||
await mmkvStorage.setItem(DISCOVER_CATALOG_KEY, JSON.stringify(catalogData));
|
await mmkvStorage.setItem(DISCOVER_CATALOG_KEY, JSON.stringify(catalogData));
|
||||||
|
} else {
|
||||||
|
// Clear catalog if null
|
||||||
|
await mmkvStorage.removeItem(DISCOVER_CATALOG_KEY);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Save genre
|
// Save genre - use empty string to indicate "All genres"
|
||||||
|
// This way we distinguish between "not set" and "All genres"
|
||||||
if (genre) {
|
if (genre) {
|
||||||
await mmkvStorage.setItem(DISCOVER_GENRE_KEY, genre);
|
await mmkvStorage.setItem(DISCOVER_GENRE_KEY, genre);
|
||||||
} else {
|
} else {
|
||||||
await mmkvStorage.removeItem(DISCOVER_GENRE_KEY);
|
// Save empty string to indicate "All genres" is selected
|
||||||
|
await mmkvStorage.setItem(DISCOVER_GENRE_KEY, '');
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
logger.error('Failed to save discover settings:', error);
|
logger.error('Failed to save discover settings:', error);
|
||||||
|
|
@ -188,11 +193,21 @@ const SearchScreen = () => {
|
||||||
|
|
||||||
// Load saved genre
|
// Load saved genre
|
||||||
const savedGenre = await mmkvStorage.getItem(DISCOVER_GENRE_KEY);
|
const savedGenre = await mmkvStorage.getItem(DISCOVER_GENRE_KEY);
|
||||||
if (savedGenre && foundCatalog.genres.includes(savedGenre)) {
|
if (savedGenre !== null) {
|
||||||
setSelectedDiscoverGenre(savedGenre);
|
if (savedGenre === '') {
|
||||||
} else if (foundCatalog.genres.length > 0) {
|
// Empty string means "All genres" was selected
|
||||||
// Set first genre as default if saved genre not available
|
setSelectedDiscoverGenre(null);
|
||||||
setSelectedDiscoverGenre(foundCatalog.genres[0]);
|
} else if (foundCatalog.genres.includes(savedGenre)) {
|
||||||
|
setSelectedDiscoverGenre(savedGenre);
|
||||||
|
} else if (foundCatalog.genres.length > 0) {
|
||||||
|
// Set first genre as default if saved genre not available
|
||||||
|
setSelectedDiscoverGenre(foundCatalog.genres[0]);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// No saved genre, default to first genre
|
||||||
|
if (foundCatalog.genres.length > 0) {
|
||||||
|
setSelectedDiscoverGenre(foundCatalog.genres[0]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
@ -688,7 +703,7 @@ const SearchScreen = () => {
|
||||||
const handleGenreSelect = (genre: string | null) => {
|
const handleGenreSelect = (genre: string | null) => {
|
||||||
setSelectedDiscoverGenre(genre);
|
setSelectedDiscoverGenre(genre);
|
||||||
|
|
||||||
// Save genre setting
|
// Save genre setting - this will save empty string for null (All genres)
|
||||||
saveDiscoverSettings(selectedDiscoverType, selectedCatalog, genre);
|
saveDiscoverSettings(selectedDiscoverType, selectedCatalog, genre);
|
||||||
|
|
||||||
genreSheetRef.current?.dismiss();
|
genreSheetRef.current?.dismiss();
|
||||||
|
|
|
||||||
|
|
@ -431,7 +431,7 @@ const styles = StyleSheet.create({
|
||||||
disclaimer: {
|
disclaimer: {
|
||||||
fontSize: 12,
|
fontSize: 12,
|
||||||
textAlign: 'center',
|
textAlign: 'center',
|
||||||
marginTop: 8,
|
marginTop: 20,
|
||||||
marginBottom: 8,
|
marginBottom: 8,
|
||||||
},
|
},
|
||||||
logoSection: {
|
logoSection: {
|
||||||
|
|
@ -439,7 +439,7 @@ const styles = StyleSheet.create({
|
||||||
justifyContent: 'center',
|
justifyContent: 'center',
|
||||||
paddingVertical: 20,
|
paddingVertical: 20,
|
||||||
marginTop: 16,
|
marginTop: 16,
|
||||||
marginBottom: 0,
|
marginBottom: 8,
|
||||||
},
|
},
|
||||||
logo: {
|
logo: {
|
||||||
width: 150,
|
width: 150,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue