Dont clear node details when closing a terminal

* a route event no longer clears the loaded node details

Fixes #1302
This commit is contained in:
David Kaltschmidt
2016-04-14 18:02:03 +02:00
parent b95e97c639
commit b9d93fb620

View File

@@ -1,6 +1,6 @@
import _ from 'lodash';
import debug from 'debug';
import { fromJS, List, Map, OrderedMap, Set } from 'immutable';
import { fromJS, is as isDeepEqual, List, Map, OrderedMap, Set } from 'immutable';
import { Store } from 'flux/utils';
import AppDispatcher from '../dispatcher/app-dispatcher';
@@ -707,7 +707,12 @@ export class AppStore extends Store {
controlPipes = controlPipes.clear();
}
if (payload.state.nodeDetails) {
nodeDetails = makeOrderedMap(payload.state.nodeDetails.map(obj => [obj.id, obj]));
const payloadNodeDetails = makeOrderedMap(
payload.state.nodeDetails.map(obj => [obj.id, obj]));
// check if detail IDs have changed
if (!isDeepEqual(nodeDetails.keySeq(), payloadNodeDetails.keySeq())) {
nodeDetails = payloadNodeDetails;
}
} else {
nodeDetails = nodeDetails.clear();
}