From bfa09681f5eda300b29940c73930c9c5965abe8f Mon Sep 17 00:00:00 2001 From: DD <liudi08@gmail.com> Date: Mon, 16 Oct 2017 18:29:59 -0400 Subject: [PATCH] Only update the assets panel on sprite change or costume change --- src/containers/costume-tab.jsx | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/containers/costume-tab.jsx b/src/containers/costume-tab.jsx index baad4eb28..c11deb2c7 100644 --- a/src/containers/costume-tab.jsx +++ b/src/containers/costume-tab.jsx @@ -39,6 +39,25 @@ class CostumeTab extends React.Component { } } + shouldComponentUpdate (nextProps) { + const { + editingTarget, + sprites, + stage + } = nextProps; + const nextTarget = editingTarget && sprites[editingTarget] ? sprites[editingTarget] : stage; + const currentTarget = + this.props.editingTarget && this.props.sprites[this.props.editingTarget] ? + this.props.sprites[this.props.editingTarget] : + this.props.stage; + + if (this.props.editingTarget !== editingTarget || + currentTarget.currentCostume !== nextTarget.currentCostume) { + return true; + } + return false; + } + handleSelectCostume (costumeIndex) { this.props.vm.editingTarget.setCostume(costumeIndex); this.setState({selectedCostumeIndex: costumeIndex}); -- GitLab