diff options
| author | Oskar Nyberg <oskar@mullvad.net> | 2020-04-24 13:14:29 +0200 |
|---|---|---|
| committer | Oskar Nyberg <oskar@mullvad.net> | 2020-04-24 13:23:32 +0200 |
| commit | 07579cd48ff7493e5bc9c8fd6d9f6d548e285d2f (patch) | |
| tree | d27dffd67ab13e8e9b9d0606cebe4bef5c30bc16 /gui/src/renderer/components/SvgMap.tsx | |
| parent | 2489837d85d914852cc0740987d9b6ab4f26d256 (diff) | |
| download | mullvadvpn-07579cd48ff7493e5bc9c8fd6d9f6d548e285d2f.tar.xz mullvadvpn-07579cd48ff7493e5bc9c8fd6d9f6d548e285d2f.zip | |
Upgrade React and ReactXP
Diffstat (limited to 'gui/src/renderer/components/SvgMap.tsx')
| -rw-r--r-- | gui/src/renderer/components/SvgMap.tsx | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gui/src/renderer/components/SvgMap.tsx b/gui/src/renderer/components/SvgMap.tsx index 0713faf7e2..2cc23d3399 100644 --- a/gui/src/renderer/components/SvgMap.tsx +++ b/gui/src/renderer/components/SvgMap.tsx @@ -9,6 +9,7 @@ import { Markers, ZoomableGroup, } from 'react-simple-maps'; +import { Scheduler } from '../../shared/scheduler'; import geographyData from '../../../assets/geo/geometry.json'; import statesProvincesLinesData from '../../../assets/geo/states-provinces-lines.json'; @@ -69,7 +70,7 @@ export default class SvgMap extends React.Component<IProps, IState> { scale: 160, }; - private transitionEndTimeout?: number; + private transitionEndScheduler = new Scheduler(); constructor(props: IProps) { super(props); @@ -101,15 +102,14 @@ export default class SvgMap extends React.Component<IProps, IState> { public componentDidUpdate(_prevProps: IProps, _prevState: IState) { if (this.state.viewportBboxes.length > 1) { - clearTimeout(this.transitionEndTimeout); - this.transitionEndTimeout = setTimeout(() => { + this.transitionEndScheduler.schedule(() => { this.setState((state) => this.removeOldViewportBboxes(state)); }, MOVE_SPEED); } } public componentWillUnmount() { - clearTimeout(this.transitionEndTimeout); + this.transitionEndScheduler.cancel(); } public render() { |
