@samitouri / QOS-React / commits / 634d4fece2

Added more inline comments

Brian Vaughn committed Apr 17, 2019 at 13:03 UTC 634d4fece2f800d95104eaa4cedf62b751f2a3d9
1 file changed +7
src/devtools/store.js
+7
@@ -458,6 +458,8 @@ export default class Store extends EventEmitter {
458 }
459
460 if (element.isCollapsed) {
461 + // There's nothing to change in this case.
462 + // We can exit early (without even emiting a "mutated" event).
463 return;
464 }
465
@@ -469,6 +471,8 @@ export default class Store extends EventEmitter {
471 element.parentID
472 ): any): Element);
473 while (parentElement != null) {
474 + // We don't need to break on a collapsed parent in the same way as the expand case below.
475 + // That's because collapsing a node doesn't "bubble" and affect its parents.
476 parentElement.weight += weightDelta;
477 parentElement = this._idToElement.get(parentElement.parentID);
478 }
@@ -490,6 +494,9 @@ export default class Store extends EventEmitter {
494 while (parentElement != null) {
495 parentElement.weight += weightDelta;
496 if (parentElement.isCollapsed) {
497 + // It's important to break on a collapsed parent when expanding nodes.
498 + // That's because expanding a node "bubbles" up and expands all parents as well.
499 + // Breaking in this case prevents us from over-incrementing the expanded weights.
500 break;
501 }
502 parentElement = this._idToElement.get(parentElement.parentID);