add stacks for home/search

so they can access album/artist/etc screen
This commit is contained in:
austinried
2021-07-09 20:39:14 +09:00
parent d245d4b786
commit cd9ae9633c
7 changed files with 113 additions and 83 deletions

View File

@@ -33,7 +33,6 @@ const Category: React.FC<{
{list.map(album => (
<PressableOpacity
onPress={() => navigation.navigate('AlbumView', { id: album.id, title: album.name })}
unstable_pressDelay={50}
key={album.id}
style={styles.item}>
<CoverArt

View File

@@ -1,13 +1,14 @@
import { useNavigation } from '@react-navigation/native'
import { useAtomValue } from 'jotai/utils'
import React, { useEffect } from 'react'
import { Pressable, StyleSheet, Text, useWindowDimensions, View } from 'react-native'
import { StyleSheet, Text, useWindowDimensions, View } from 'react-native'
import { Album } from '@app/models/music'
import { albumsAtom, albumsUpdatingAtom, useUpdateAlbums } from '@app/state/music'
import font from '@app/styles/font'
import AlbumArt from '@app/components/AlbumArt'
import GradientFlatList from '@app/components/GradientFlatList'
import colors from '@app/styles/colors'
import PressableOpacity from '@app/components/PressableOpacity'
const AlbumItem: React.FC<{
id: string
@@ -19,7 +20,7 @@ const AlbumItem: React.FC<{
const navigation = useNavigation()
return (
<Pressable
<PressableOpacity
style={[styles.item, { maxWidth: size, height }]}
onPress={() => navigation.navigate('AlbumView', { id, title: name })}>
<AlbumArt id={id} height={size} width={size} />
@@ -31,7 +32,7 @@ const AlbumItem: React.FC<{
{artist}
</Text>
</View>
</Pressable>
</PressableOpacity>
)
}
const MemoAlbumItem = React.memo(AlbumItem)

View File

@@ -2,7 +2,6 @@ import { useNavigation } from '@react-navigation/native'
import { useAtomValue } from 'jotai/utils'
import React, { useEffect } from 'react'
import { StatusBar, StyleSheet, Text, View } from 'react-native'
import { NativeStackScreenProps } from 'react-native-screens/lib/typescript/native-stack'
import { State } from 'react-native-track-player'
import IconFA from 'react-native-vector-icons/FontAwesome'
import IconFA5 from 'react-native-vector-icons/FontAwesome5'
@@ -26,6 +25,7 @@ import CoverArt from '@app/components/CoverArt'
import ImageGradientBackground from '@app/components/ImageGradientBackground'
import PressableOpacity from '@app/components/PressableOpacity'
import dimensions from '@app/styles/dimensions'
import { NativeStackScreenProps } from 'react-native-screens/native-stack'
const NowPlayingHeader = () => {
const queueName = useAtomValue(queueNameAtom)