diff --git a/src/app/pages/client/ClientLayout.tsx b/src/app/pages/client/ClientLayout.tsx index 9aa431a8..62ba0e05 100644 --- a/src/app/pages/client/ClientLayout.tsx +++ b/src/app/pages/client/ClientLayout.tsx @@ -1,9 +1,11 @@ -import React, { ReactNode, useMemo } from 'react'; +import React, { ReactNode, useMemo, useRef } from 'react'; import { Box } from 'folds'; -import { useParams } from 'react-router-dom'; +import { Outlet, useParams } from 'react-router-dom'; import { useCallState } from './CallProvider'; import { PersistentCallContainer } from '../call/PersistentCallContainer'; import { useMatrixClient } from '../../hooks/useMatrixClient'; +import { ClientWidgetApi } from 'matrix-widget-api'; +import { SmallWidget } from '../../features/room/SmallWidget'; type ClientLayoutProps = { nav: ReactNode; @@ -11,6 +13,13 @@ type ClientLayoutProps = { }; export function ClientLayout({ nav, children }: ClientLayoutProps) { const { activeCallRoomId } = useCallState(); + const iframeRef = useRef(null); + const widgetApiRef = useRef(null); + const smallWidgetRef = useRef(null); + + const backupIframeRef = useRef(null); + const backupWidgetApiRef = useRef(null); + const backupSmallWidgetRef = useRef(null); const { roomIdOrAlias: viewedRoomId } = useParams(); const mx = useMatrixClient(); const isCall = mx.getRoom(viewedRoomId)?.isCallRoom(); @@ -22,21 +31,38 @@ export function ClientLayout({ nav, children }: ClientLayoutProps) { + - {children} + - - {' '} + ); }