Skip to content

Commit 499eafc

Browse files
committed
Fix webframe
1 parent 12db113 commit 499eafc

File tree

2 files changed

+10
-9
lines changed

2 files changed

+10
-9
lines changed

apps/web/client/src/app/project/[id]/_components/canvas/frame/gesture.tsx

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,10 @@ import { observer } from 'mobx-react-lite';
99
import { useCallback, useEffect, useMemo } from 'react';
1010
import { RightClickMenu } from './right-click';
1111
import type { WebFrameView } from './web-frame';
12-
export const GestureScreen = observer(({ frame, webFrameRef }: { frame: WebFrame, webFrameRef: React.RefObject<WebFrameView | null> }) => {
12+
13+
export const GestureScreen = observer(({ frame, webFrame }: { frame: WebFrame, webFrame: WebFrameView }) => {
1314
const editorEngine = useEditorEngine();
1415
const isResizing = false;
15-
const webFrame = webFrameRef.current;
16-
17-
if (!webFrame) {
18-
console.log('No web frame found in gesture screen for frame', frame.id);
19-
return null;
20-
}
2116

2217
const getRelativeMousePosition = (e: React.MouseEvent<HTMLDivElement>): ElementPosition => {
2318
return getRelativeMousePositionToWebview(e, webFrame);

apps/web/client/src/app/project/[id]/_components/canvas/frame/index.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { FrameType, type Frame, type WebFrame } from "@onlook/models";
22
import { observer } from "mobx-react-lite";
3-
import { useRef } from "react";
3+
import { useEffect, useRef, useState } from "react";
44
import { GestureScreen } from './gesture';
55
import { ResizeHandles } from './resize-handles';
66
import { TopBar } from "./top-bar";
@@ -13,6 +13,12 @@ export const FrameView = observer(
1313
frame: Frame;
1414
}) => {
1515
const webFrameRef = useRef<WebFrameView>(null);
16+
const [webFrame, setWebFrame] = useState<WebFrameView | null>(null);
17+
18+
useEffect(() => {
19+
setWebFrame(webFrameRef.current);
20+
}, [webFrameRef.current]);
21+
1622
return (
1723
<div
1824
className="flex flex-col fixed"
@@ -23,7 +29,7 @@ export const FrameView = observer(
2329
<div className="relative">
2430
<ResizeHandles frame={frame} />
2531
{frame.type === FrameType.WEB && <WebFrameComponent frame={frame as WebFrame} ref={webFrameRef} />}
26-
<GestureScreen frame={frame as WebFrame} webFrameRef={webFrameRef} />
32+
{webFrame && <GestureScreen frame={frame as WebFrame} webFrame={webFrame} />}
2733
{/* {domFailed && shouldShowDomFailed && renderNotRunning()} */}
2834
</div>
2935

0 commit comments

Comments
 (0)