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:
budowski
2024-08-30 22:42:26 +02:00
committed by GitHub
parent f4c7ee3f86
commit 344815fc45

View File

@@ -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();