From d146d326d5b6410aae15f83d52c3b5cf35fd3691 Mon Sep 17 00:00:00 2001 From: Andrew Watkins Date: Wed, 2 May 2018 16:01:14 -0700 Subject: [PATCH] Add logic to expand all on double click --- ui/src/shared/components/Threesizer.tsx | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/ui/src/shared/components/Threesizer.tsx b/ui/src/shared/components/Threesizer.tsx index f9cee43f31..7bb791612b 100644 --- a/ui/src/shared/components/Threesizer.tsx +++ b/ui/src/shared/components/Threesizer.tsx @@ -157,6 +157,18 @@ class Threesizer extends Component { } private handleDoubleClick = (id: string): void => { + const clickedDiv = this.state.divisions.find(d => d.id === id) + + if (!clickedDiv) { + return + } + + const isFullSized = clickedDiv.size === 1 + + if (isFullSized) { + return this.expandAll() + } + const divisions = this.state.divisions.map(d => { if (d.id !== id) { return {...d, size: 0} @@ -168,6 +180,14 @@ class Threesizer extends Component { this.setState({divisions}) } + private expandAll = () => { + const divisions = this.state.divisions.map(d => { + return {...d, size: 1 / this.state.divisions.length} + }) + + this.setState({divisions}) + } + private handleStartDrag = (activeHandleID, e: MouseEvent) => { const dragEvent = this.mousePosWithinContainer(e) this.setState({activeHandleID, dragEvent})