From 9438a2f626aa48109680e8983766ca56bfc5fa24 Mon Sep 17 00:00:00 2001 From: schroda <50052685+schroda@users.noreply.github.com> Date: Sun, 29 Dec 2024 17:12:24 +0100 Subject: [PATCH] Unmount "ReaderNavBarDesktop" on exit Re-rendering the component isn't too expensive and unmounting it improves the re-rendering caused by page changes since it doesn't get updated. This removes ~7ms on a "current page" state update and ~25ms caused by the chapter update due to the "last read page" change --- .../overlay/navigation/desktop/ReaderNavBarDesktop.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/modules/reader/components/overlay/navigation/desktop/ReaderNavBarDesktop.tsx b/src/modules/reader/components/overlay/navigation/desktop/ReaderNavBarDesktop.tsx index 81100180..d8cf97c6 100644 --- a/src/modules/reader/components/overlay/navigation/desktop/ReaderNavBarDesktop.tsx +++ b/src/modules/reader/components/overlay/navigation/desktop/ReaderNavBarDesktop.tsx @@ -100,6 +100,9 @@ const BaseReaderNavBarDesktop = ({ variant={isStaticNav ? 'permanent' : 'persistent'} open={isVisible || isStaticNav} transitionDuration={drawerTransitionDuration} + SlideProps={{ + unmountOnExit: true, + }} PaperProps={{ ref: (ref: HTMLDivElement | null) => setNavBarElement(ref), }}