mirror of
https://github.com/inaturalist/iNaturalistReactNative.git
synced 2026-06-22 14:38:49 -04:00
Show nearby results in Explore after granting permission from Filters (#2013)
Closes #2004 --------- Co-authored-by: Ken-ichi Ueda <kenichi.ueda@gmail.com>
This commit is contained in:
@@ -14,6 +14,7 @@ import type { Node } from "react";
|
||||
import React, {
|
||||
useCallback,
|
||||
useEffect,
|
||||
useRef,
|
||||
useState
|
||||
} from "react";
|
||||
import { useCurrentUser } from "sharedHooks";
|
||||
@@ -39,6 +40,7 @@ const RootExploreContainerWithContext = ( ): Node => {
|
||||
hasBlockedPermissions: hasBlockedLocationPermissions,
|
||||
checkPermissions
|
||||
} = useLocationPermission( );
|
||||
const previousHasLocationPermissions = useRef();
|
||||
|
||||
const {
|
||||
state, dispatch, makeSnapshot, defaultExploreLocation
|
||||
@@ -48,6 +50,23 @@ const RootExploreContainerWithContext = ( ): Node => {
|
||||
|
||||
const [canFetch, setCanFetch] = useState( false );
|
||||
|
||||
useEffect( () => {
|
||||
async function locationPermissionsChanged() {
|
||||
if ( hasLocationPermissions && !previousHasLocationPermissions.current
|
||||
&& state.placeMode === PLACE_MODE.NEARBY && !state.lat ) {
|
||||
const exploreLocation = await defaultExploreLocation();
|
||||
dispatch( {
|
||||
type: EXPLORE_ACTION.SET_EXPLORE_LOCATION,
|
||||
exploreLocation
|
||||
} );
|
||||
}
|
||||
|
||||
previousHasLocationPermissions.current = hasLocationPermissions;
|
||||
}
|
||||
|
||||
locationPermissionsChanged();
|
||||
}, [defaultExploreLocation, dispatch, hasLocationPermissions, state] );
|
||||
|
||||
useEffect( () => {
|
||||
if ( state.placeMode === PLACE_MODE.NEARBY ) {
|
||||
checkPermissions();
|
||||
|
||||
Reference in New Issue
Block a user