diff --git a/.changeset/stale-drinks-report.md b/.changeset/stale-drinks-report.md
new file mode 100644
index 0000000000000..21977873c7f62
--- /dev/null
+++ b/.changeset/stale-drinks-report.md
@@ -0,0 +1,5 @@
+---
+'@rocket.chat/meteor': patch
+---
+
+Fixes an issue where the expanded thread view was overlapping the navbar
diff --git a/apps/meteor/client/views/room/contextualBar/Threads/Thread.tsx b/apps/meteor/client/views/room/contextualBar/Threads/Thread.tsx
index ddccdeb501563..78f6edd444426 100644
--- a/apps/meteor/client/views/room/contextualBar/Threads/Thread.tsx
+++ b/apps/meteor/client/views/room/contextualBar/Threads/Thread.tsx
@@ -19,6 +19,7 @@ import {
useUserId,
useRoomToolbox,
} from '@rocket.chat/ui-contexts';
+import { createPortal } from 'react-dom';
import ThreadChat from './components/ThreadChat';
import ThreadSkeleton from './components/ThreadSkeleton';
@@ -82,64 +83,85 @@ const Thread = ({ tmid }: ThreadProps) => {
closeTab();
};
+ const isExpanded = canExpand && expanded;
+ const portalTarget = isExpanded ? document.getElementById('main-content') : null;
+
+ const threadContent = (
+
+
+
+ {(mainMessageQueryResult.isLoading && ) ||
+ (mainMessageQueryResult.isSuccess && ) ||
+ null}
+
+ {canExpand && (
+
+ )}
+
+
+
+
+
+ {(mainMessageQueryResult.isLoading && ) ||
+ (mainMessageQueryResult.isSuccess && (
+
+
+
+ )) ||
+ null}
+
+ );
+
return (
- {canExpand && expanded && }
-
-
-
-
- {(mainMessageQueryResult.isLoading && ) ||
- (mainMessageQueryResult.isSuccess && ) ||
- null}
-
- {canExpand && (
-
- )}
-
-
-
-
-
- {(mainMessageQueryResult.isLoading && ) ||
- (mainMessageQueryResult.isSuccess && (
-
-
-
- )) ||
- null}
-
-
+ {portalTarget ? (
+ createPortal(
+ <>
+
+ {threadContent}
+ >,
+ portalTarget,
+ )
+ ) : (
+
+ {threadContent}
+
+ )}
);