From 81334cdbd88f7a4708832ca318414d8e9eb5e6b8 Mon Sep 17 00:00:00 2001 From: Simon Howe Date: Wed, 20 Apr 2016 10:05:17 +0200 Subject: [PATCH] Fixes up node (de)selection after bad attempt to fix stale metadata --- client/app/scripts/charts/nodes-chart.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/client/app/scripts/charts/nodes-chart.js b/client/app/scripts/charts/nodes-chart.js index b64d53efb..ae839c96f 100644 --- a/client/app/scripts/charts/nodes-chart.js +++ b/client/app/scripts/charts/nodes-chart.js @@ -352,12 +352,15 @@ export default class NodesChart extends React.Component { log(`graph layout took ${timedLayouter.time}ms`); // inject metrics and save coordinates for restore - const layoutNodes = graph.nodes - .mergeDeep(stateNodes) + let layoutNodes = graph.nodes .map(node => node.merge({ px: node.get('x'), py: node.get('y') })); + + // Re-apply in case layout runner's node cache applied stale node metadata + layoutNodes = layoutNodes.mergeDeep(stateNodes); + const layoutEdges = graph.edges .map(edge => edge.set('ppoints', edge.get('points')));