From 0eefea6d0beb9ff42c6caa0f921e96999bebc207 Mon Sep 17 00:00:00 2001 From: Bernt Christian Egeland Date: Mon, 23 Aug 2021 18:37:42 +0200 Subject: [PATCH] scroll into view --- web/src/routes/Event.jsx | 13 +++++-------- web/src/routes/Events.jsx | 1 - 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/web/src/routes/Event.jsx b/web/src/routes/Event.jsx index 786ee6ac0..cd7a50609 100644 --- a/web/src/routes/Event.jsx +++ b/web/src/routes/Event.jsx @@ -15,20 +15,17 @@ export default function Event({ eventId, close, scrollRef }) { const apiHost = useApiHost(); const { data, status } = useEvent(eventId); const [showDialog, setShowDialog] = useState(false); + const [shouldScroll, setShouldScroll] = useState(true); const [deleteStatus, setDeleteStatus] = useState(FetchStatus.NONE); const setDeleteEvent = useDelete(); useEffect(() => { - // Call Events.js scroll when this event has been mounted. - // scrollIntoView(eventId); - scrollToElement(); - }, [data]); - - const scrollToElement = useCallback(() => { - if (scrollRef && scrollRef[eventId]) { + // Scroll event into view when component has been mounted. + if (shouldScroll && scrollRef && scrollRef[eventId]) { scrollRef[eventId].scrollIntoView(); + setShouldScroll(false); } - }, [scrollRef]); + }, [data, scrollRef, eventId, shouldScroll]); const handleClickDelete = () => { setShowDialog(true); diff --git a/web/src/routes/Events.jsx b/web/src/routes/Events.jsx index 73d947aed..626b56ebd 100644 --- a/web/src/routes/Events.jsx +++ b/web/src/routes/Events.jsx @@ -80,7 +80,6 @@ export default function Events({ path: pathname, limit = API_LIMIT } = {}) { } if (data && Array.isArray(data) && data.length + deleted < limit) { - console.log('reached end'); dispatch({ type: 'REACHED_END', meta: { searchString } }); } }, [data, limit, searchString, searchStrings, deleted]);