Skip to content

Commit

Permalink
feat(globe): stop spinning globe on play
Browse files Browse the repository at this point in the history
  • Loading branch information
pwambach committed Sep 9, 2020
1 parent a0974fc commit b637e5b
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions src/scripts/components/layers/time-slider/time-slider.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@ import TimePlayback from '../time-playback/time-playback';
import Button from '../../main/button/button';
import {PlayCircleIcon} from '../../main/icons/play-circle-icon';
import {PauseCircleIcon} from '../../main/icons/pause-circle-icon';
import setGlobeSpinningAction from '../../../actions/set-globe-spinning';
import {globeSpinningSelector} from '../../../selectors/globe/spinning';

import styles from './time-slider.styl';

Expand All @@ -47,6 +49,7 @@ const TimeSlider: FunctionComponent = () => {
const compareLayerDetails = useSelector((state: State) =>
layerDetailsSelector(state, compareId)
);
const globeSpinning = useSelector(globeSpinningSelector);

const playbackStep = useMemo(
() => Math.floor(getPlaybackStep(mainLayerDetails, compareLayerDetails)),
Expand Down Expand Up @@ -107,6 +110,13 @@ const TimeSlider: FunctionComponent = () => {
}
}, [time, globeTime]);

// stop globe spinning when playing
useEffect(() => {
if (isPlaying && globeSpinning) {
dispatch(setGlobeSpinningAction(false));
}
}, [dispatch, isPlaying, globeSpinning]);

// return nothing when no timesteps available
if (combined.timestamps.length === 0) {
return null;
Expand Down

0 comments on commit b637e5b

Please sign in to comment.