import React from 'react';
import { Link, useNavigate } from 'react-router-dom';
+import { useOpenSeadragon } from './OpenSeadragon';
import Overlay from './Overlay';
import Popover from './Popover';
import Icon from '../common/Icon';
import i18n from '../../i18n';
const Pin = ({ pin }) => {
+ const { storePosition } = useOpenSeadragon();
const [showPopover, setShowPopover] = React.useState(false);
const ref = React.useRef();
const onClick = React.useCallback((e) => {
if (ref.current && ref.current.contains(e.originalTarget)) {
if (e.originalTarget.tagName === 'A') {
+ storePosition();
navigate(new URL(e.originalTarget.href).pathname);
}
} else {
if (pin.technique.type === 'location') {
setShowPopover(s => !s);
} else {
+ storePosition();
navigate(getLink(pin.technique));
}
}