Reduce flickering in VariablesView.
Since the individual _AddNode() invocations notify their node additions, NotifyTableModelReset() isn't really appropriate here after all, since the net effect will be seeing all the nodes getting added, then removed again, then re-added. Also fixes the fact that the variables wouldn't get cleared when picking Run, until we stopped again.
This commit is contained in:
@@ -940,10 +940,10 @@ VariablesView::VariableTableModel::SetStackFrame(Thread* thread,
|
|||||||
fNodes.MakeEmpty();
|
fNodes.MakeEmpty();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (stackFrame == NULL) {
|
NotifyNodesRemoved(TreeTablePath(), 0, count);
|
||||||
NotifyNodesRemoved(TreeTablePath(), 0, count);
|
|
||||||
|
if (stackFrame == NULL)
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
ValueNodeContainer* container = fNodeManager->GetContainer();
|
ValueNodeContainer* container = fNodeManager->GetContainer();
|
||||||
AutoLocker<ValueNodeContainer> containerLocker(container);
|
AutoLocker<ValueNodeContainer> containerLocker(container);
|
||||||
@@ -956,8 +956,6 @@ VariablesView::VariableTableModel::SetStackFrame(Thread* thread,
|
|||||||
// so those won't invoke our callback hook. Add them directly here.
|
// so those won't invoke our callback hook. Add them directly here.
|
||||||
ValueNodeChildrenCreated(child->Node());
|
ValueNodeChildrenCreated(child->Node());
|
||||||
}
|
}
|
||||||
|
|
||||||
NotifyTableModelReset();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user