mirror of
https://github.com/inaturalist/iNaturalistReactNative.git
synced 2026-06-21 22:18:32 -04:00
fix: reduce image flickering on Suggestions (#2049)
Stabilizes some of the props to prevent some re-renders. Closes #1878
This commit is contained in:
@@ -129,7 +129,10 @@ const SuggestionsContainer = ( ) => {
|
||||
useClearComputerVisionDirectory( );
|
||||
const currentObservation = useStore( state => state.currentObservation );
|
||||
const innerPhotos = ObservationPhoto.mapInnerPhotos( currentObservation );
|
||||
const photoUris = ObservationPhoto.mapObsPhotoUris( currentObservation );
|
||||
const photoUris = useMemo(
|
||||
() => ObservationPhoto.mapObsPhotoUris( currentObservation ),
|
||||
[currentObservation]
|
||||
);
|
||||
const updateObservationKeys = useStore( state => state.updateObservationKeys );
|
||||
|
||||
const evidenceHasLocation = !!currentObservation?.latitude;
|
||||
|
||||
@@ -72,11 +72,12 @@ const useLocationPermission = ( ) => {
|
||||
);
|
||||
}, [showPermissionGate] );
|
||||
|
||||
function requestPermissions() {
|
||||
setShowPermissionGate( true );
|
||||
}
|
||||
const requestPermissions = useCallback(
|
||||
( ) => setShowPermissionGate( true ),
|
||||
[]
|
||||
);
|
||||
|
||||
async function checkPermissions() {
|
||||
const checkPermissions = useCallback( async () => {
|
||||
const permissionsResult = permissionResultFromMultiple(
|
||||
await checkMultiple( LOCATION_PERMISSIONS )
|
||||
);
|
||||
@@ -87,14 +88,13 @@ const useLocationPermission = ( ) => {
|
||||
setHasBlockedPermissions( true );
|
||||
} else {
|
||||
setHasPermissions( false );
|
||||
console.log( "Location permissions have not been granted." );
|
||||
}
|
||||
}
|
||||
}, [] );
|
||||
|
||||
// Check permissions on mount
|
||||
useEffect( () => {
|
||||
checkPermissions();
|
||||
}, [] );
|
||||
}, [checkPermissions] );
|
||||
|
||||
return {
|
||||
hasPermissions,
|
||||
|
||||
Reference in New Issue
Block a user