diff --git a/packages/app/src/Components/Event/Thread.tsx b/packages/app/src/Components/Event/Thread.tsx index 44cbffbf..b5c51d2a 100644 --- a/packages/app/src/Components/Event/Thread.tsx +++ b/packages/app/src/Components/Event/Thread.tsx @@ -225,7 +225,6 @@ export function ThreadRoute({ id }: { id?: string }) { return ( - ); diff --git a/packages/app/src/Components/ScrollToTop.tsx b/packages/app/src/Components/ScrollToTop.tsx index d1adaa13..b1fed339 100644 --- a/packages/app/src/Components/ScrollToTop.tsx +++ b/packages/app/src/Components/ScrollToTop.tsx @@ -1,12 +1,16 @@ import { useEffect } from "react"; -import { useLocation } from "react-router-dom"; +import { useLocation, useNavigationType } from "react-router-dom"; export default function ScrollToTop() { const { pathname } = useLocation(); + const navigationType = useNavigationType(); // This hook is available in React Router v6 useEffect(() => { - window.scrollTo(0, 0); - }, [pathname]); + if (navigationType !== "POP") { + window.scrollTo(0, 0); + } + // Only scrolls to top on PUSH or REPLACE, not on POP + }, [pathname, navigationType]); return null; } diff --git a/packages/app/src/Pages/Layout/NavSidebar.tsx b/packages/app/src/Pages/Layout/NavSidebar.tsx index 319616be..d55197a2 100644 --- a/packages/app/src/Pages/Layout/NavSidebar.tsx +++ b/packages/app/src/Pages/Layout/NavSidebar.tsx @@ -74,7 +74,7 @@ const getNavLinkClass = (isActive: boolean, narrow: boolean) => { }); }; -export default function NavSidebar({ narrow = false }: { narrow: boolean }) { +export default function NavSidebar({ narrow = false }: { narrow?: boolean }) { const { publicKey, readonly } = useLogin(s => ({ publicKey: s.publicKey, readonly: s.readonly, diff --git a/packages/app/src/Pages/Layout/index.tsx b/packages/app/src/Pages/Layout/index.tsx index 75031a23..61daf820 100644 --- a/packages/app/src/Pages/Layout/index.tsx +++ b/packages/app/src/Pages/Layout/index.tsx @@ -20,6 +20,7 @@ import { LoginStore } from "@/Utils/Login"; import NavSidebar from "./NavSidebar"; import RightColumn from "./RightColumn"; +import ScrollToTop from "@/Components/ScrollToTop"; export default function Index() { const location = useLocation(); @@ -57,6 +58,7 @@ export default function Index() { return ( +
diff --git a/packages/app/src/Pages/Notifications/Notifications.tsx b/packages/app/src/Pages/Notifications/Notifications.tsx index d7dd613b..857267ea 100644 --- a/packages/app/src/Pages/Notifications/Notifications.tsx +++ b/packages/app/src/Pages/Notifications/Notifications.tsx @@ -53,7 +53,6 @@ export default function NotificationsPage({ onClick }: { onClick?: (link: NostrL return ( <> -
{CONFIG.features.notificationGraph && ( }>