feat: pass canvasRef and yjsDoc to SidePanel

This commit is contained in:
2026-06-22 21:00:43 +00:00
parent 1f2c01cb27
commit f8680ef130
+5 -3
View File
@@ -1,4 +1,4 @@
import React, { useState } from 'react'; import React, { useState, useRef } from 'react';
import './App.css'; import './App.css';
import './styles/theme.css'; import './styles/theme.css';
import { ThemeProvider, useTheme } from './contexts/ThemeContext'; import { ThemeProvider, useTheme } from './contexts/ThemeContext';
@@ -11,6 +11,8 @@ import CanvasArea from './components/CanvasArea';
function AppContent() { function AppContent() {
const { theme, toggleTheme } = useTheme(); const { theme, toggleTheme } = useTheme();
const [activeRibbonTab, setActiveRibbonTab] = useState('draw'); const [activeRibbonTab, setActiveRibbonTab] = useState('draw');
const canvasRef = useRef(null);
const yjsDocRef = useRef(null);
const handleRibbonTabChange = (tab: string) => { const handleRibbonTabChange = (tab: string) => {
setActiveRibbonTab(tab); setActiveRibbonTab(tab);
@@ -20,8 +22,8 @@ function AppContent() {
<div className={`app-container ${theme}`} data-theme={theme}> <div className={`app-container ${theme}`} data-theme={theme}>
<RibbonBar onTabChange={handleRibbonTabChange} /> <RibbonBar onTabChange={handleRibbonTabChange} />
<div className="main-content"> <div className="main-content">
<CanvasArea /> <CanvasArea ref={canvasRef} />
<SidePanel /> <SidePanel canvasRef={canvasRef} yjsDoc={yjsDocRef} />
</div> </div>
<CommandLine /> <CommandLine />
<StatusBar /> <StatusBar />