diff --git a/desktop/plugins/public/ui-debugger/components/main.tsx b/desktop/plugins/public/ui-debugger/components/main.tsx index 8c790510b..3457d902e 100644 --- a/desktop/plugins/public/ui-debugger/components/main.tsx +++ b/desktop/plugins/public/ui-debugger/components/main.tsx @@ -31,13 +31,12 @@ import {Tree2} from './Tree'; export function Component() { const instance = usePlugin(plugin); const rootId = useValue(instance.rootId); + const visualiserWidth = useValue(instance.uiState.visualiserWidth); const nodes: Map = useValue(instance.nodes); const metadata: Map = useValue(instance.metadata); const [showPerfStats, setShowPerfStats] = useState(false); - const [visualiserWidth, setVisualiserWidth] = useState(500); - useHotkeys('ctrl+i', () => setShowPerfStats((show) => !show)); const {ctrlPressed} = useKeyboardModifiers(); @@ -59,16 +58,18 @@ export function Component() { width={visualiserWidth} maxWidth={800} onResize={(width) => { - setVisualiserWidth(width); + instance.uiActions.setVisualiserWidth(width); }} gutter> - + + + diff --git a/desktop/plugins/public/ui-debugger/index.tsx b/desktop/plugins/public/ui-debugger/index.tsx index b75ac7f57..81954da5b 100644 --- a/desktop/plugins/public/ui-debugger/index.tsx +++ b/desktop/plugins/public/ui-debugger/index.tsx @@ -43,6 +43,7 @@ type UIState = { highlightedNodes: Atom>; focusedNode: Atom; expandedNodes: Atom>; + visualiserWidth: Atom; frameworkEventMonitoring: Atom>; }; @@ -91,6 +92,8 @@ export function plugin(client: PluginClient) { //used to disabled hover effects which cause rerenders and mess up the existing context menu isContextMenuOpen: createState(false), + visualiserWidth: createState(Math.min(window.innerWidth / 4.5, 500)), + highlightedNodes, selectedNode: createState(undefined), @@ -260,6 +263,7 @@ type UIActions = { onSelectNode: (node?: Id) => void; onExpandNode: (node: Id) => void; onCollapseNode: (node: Id) => void; + setVisualiserWidth: (width: Id) => void; }; function uiActions(uiState: UIState, nodes: Atom>): UIActions { @@ -298,6 +302,11 @@ function uiActions(uiState: UIState, nodes: Atom>): UIActions { uiState.focusedNode.set(focused); }; + const setVisualiserWidth = (width: number) => { + console.log('w', width); + uiState.visualiserWidth.set(width); + }; + return { onExpandNode, onCollapseNode, @@ -305,6 +314,7 @@ function uiActions(uiState: UIState, nodes: Atom>): UIActions { onSelectNode, onContextMenuOpen, onFocusNode, + setVisualiserWidth, }; }