diff --git a/apps/desktop/src/components/main/body/index.tsx b/apps/desktop/src/components/main/body/index.tsx
index f5008026cc..3782ead395 100644
--- a/apps/desktop/src/components/main/body/index.tsx
+++ b/apps/desktop/src/components/main/body/index.tsx
@@ -111,9 +111,10 @@ function Header({ tabs }: { tabs: Tab[] }) {
useState(false);
const { ref: rightContainerRef, hasSpace: hasSpaceForSearch } =
useHasSpaceForSearch();
- const scrollState = useScrollState(tabsScrollContainerRef, [tabs]);
-
- const setTabRef = useScrollActiveTabIntoView(tabs);
+ const { setTabRef, tabRefsMap } = useScrollActiveTabIntoView(tabs);
+ const scrollState = useScrollState(tabsScrollContainerRef, tabRefsMap, tabs, [
+ tabs,
+ ]);
useTabsShortcuts();
return (
@@ -206,10 +207,20 @@ function Header({ tabs }: { tabs: Tab[] }) {
{!scrollState.atStart && (
-
+
)}
{!scrollState.atEnd && (
-
+
)}
@@ -566,11 +577,15 @@ function useHasSpaceForSearch() {
function useScrollState(
ref: React.RefObject,
+ tabRefsMap: React.RefObject