Fix <InFrontOfTheCanvas/>
(#4024)
This PR: - fixes the placement of the InFrontOfTheCanvas component ### Change Type - [x] `sdk` — Changes the tldraw SDK - [x] `bugfix` — Bug fix ### Release Notes - Fixed placement of the InFrontOfTheCanvas component.
This commit is contained in:
parent
4a3d9d407d
commit
d686b1f0c5
3 changed files with 52 additions and 67 deletions
|
@ -125,53 +125,62 @@ export function DefaultCanvas({ className }: TLCanvasComponentProps) {
|
|||
)
|
||||
|
||||
return (
|
||||
<div
|
||||
ref={rCanvas}
|
||||
draggable={false}
|
||||
data-iseditinganything={isEditingAnything}
|
||||
data-isselectinganything={isSelectingAnything}
|
||||
className={classNames('tl-canvas', className)}
|
||||
data-testid="canvas"
|
||||
{...events}
|
||||
>
|
||||
<svg className="tl-svg-context">
|
||||
<defs>
|
||||
{shapeSvgDefs}
|
||||
<CursorDef />
|
||||
<CollaboratorHintDef />
|
||||
{SvgDefs && <SvgDefs />}
|
||||
</defs>
|
||||
</svg>
|
||||
{Background && (
|
||||
<div className="tl-background__wrapper">
|
||||
<Background />
|
||||
<>
|
||||
<div
|
||||
ref={rCanvas}
|
||||
draggable={false}
|
||||
data-iseditinganything={isEditingAnything}
|
||||
data-isselectinganything={isSelectingAnything}
|
||||
className={classNames('tl-canvas', className)}
|
||||
data-testid="canvas"
|
||||
{...events}
|
||||
>
|
||||
<svg className="tl-svg-context">
|
||||
<defs>
|
||||
{shapeSvgDefs}
|
||||
<CursorDef />
|
||||
<CollaboratorHintDef />
|
||||
{SvgDefs && <SvgDefs />}
|
||||
</defs>
|
||||
</svg>
|
||||
{Background && (
|
||||
<div className="tl-background__wrapper">
|
||||
<Background />
|
||||
</div>
|
||||
)}
|
||||
<GridWrapper />
|
||||
<div ref={rHtmlLayer} className="tl-html-layer tl-shapes" draggable={false}>
|
||||
<OnTheCanvasWrapper />
|
||||
<SelectionBackgroundWrapper />
|
||||
{hideShapes ? null : debugSvg ? <ShapesWithSVGs /> : <ShapesToDisplay />}
|
||||
</div>
|
||||
)}
|
||||
<GridWrapper />
|
||||
<div ref={rHtmlLayer} className="tl-html-layer tl-shapes" draggable={false}>
|
||||
<OnTheCanvasWrapper />
|
||||
<SelectionBackgroundWrapper />
|
||||
{hideShapes ? null : debugSvg ? <ShapesWithSVGs /> : <ShapesToDisplay />}
|
||||
</div>
|
||||
<div className="tl-overlays">
|
||||
<div ref={rHtmlLayer2} className="tl-html-layer">
|
||||
{debugGeometry ? <GeometryDebuggingView /> : null}
|
||||
<HandlesWrapper />
|
||||
<BrushWrapper />
|
||||
<ScribbleWrapper />
|
||||
<ZoomBrushWrapper />
|
||||
<ShapeIndicators />
|
||||
<HintedShapeIndicator />
|
||||
<SnapIndicatorWrapper />
|
||||
<SelectionForegroundWrapper />
|
||||
<LiveCollaborators />
|
||||
<div className="tl-overlays">
|
||||
<div ref={rHtmlLayer2} className="tl-html-layer">
|
||||
{debugGeometry ? <GeometryDebuggingView /> : null}
|
||||
<HandlesWrapper />
|
||||
<BrushWrapper />
|
||||
<ScribbleWrapper />
|
||||
<ZoomBrushWrapper />
|
||||
<ShapeIndicators />
|
||||
<HintedShapeIndicator />
|
||||
<SnapIndicatorWrapper />
|
||||
<SelectionForegroundWrapper />
|
||||
<LiveCollaborators />
|
||||
</div>
|
||||
</div>
|
||||
<MovingCameraHitTestBlocker />
|
||||
</div>
|
||||
<MovingCameraHitTestBlocker />
|
||||
</div>
|
||||
<InFrontOfTheCanvasWrapper />
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
function InFrontOfTheCanvasWrapper() {
|
||||
const { InFrontOfTheCanvas } = useEditorComponents()
|
||||
if (!InFrontOfTheCanvas) return null
|
||||
return <InFrontOfTheCanvas />
|
||||
}
|
||||
|
||||
function GridWrapper() {
|
||||
const editor = useEditor()
|
||||
const gridSize = useValue('gridSize', () => editor.getDocumentSettings().gridSize, [editor])
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue