Implement shouldComponentUpdate in Dialog. This is not as easy as it should be because Dialog components render in two passes. To make this possible, I've added a flag to each instance of which makes it possible to track the progress of these two-pass renders.
Fix the shouldComponentUpdate implementations in Fill.jsx. We were passing in a plain objects as the fill prop to the components defined in Fill.jsx, but testing for equality with Immutable.is. (It would be nice if this threw an error?) I worked around the problem by just creating a custom struct to hold the properties in that previously mutable object.
Both of these components were being rendered unnecessarily when calling initializeBackgroundLayers. The former was also causing all dialogs to re-render whenever one dialog was opened.
shouldComponentUpdate
inDialog
. This is not as easy as it should be becauseDialog
components render in two passes. To make this possible, I've added a flag to each instance of which makes it possible to track the progress of these two-pass renders.shouldComponentUpdate
implementations in Fill.jsx. We were passing in a plain objects as thefill
prop to the components defined inFill.jsx
, but testing for equality withImmutable.is
. (It would be nice if this threw an error?) I worked around the problem by just creating a custom struct to hold the properties in that previously mutable object.Both of these components were being rendered unnecessarily when calling
initializeBackgroundLayers
. The former was also causing all dialogs to re-render whenever one dialog was opened.Addresses: concerns.