Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulian Honnen2016-12-21 09:13:21 +0000
committerLars Vogel2018-08-27 13:38:05 +0000
commitf05d5c4526225094bcab1a574db3c68a9713f033 (patch)
tree1234218d6cfda7b257c40687f729e24f7e8d65a7 /bundles/org.eclipse.team.ui
parent16d8a00906026e396e48804df2a9d0a2b415700e (diff)
downloadeclipse.platform.team-f05d5c4526225094bcab1a574db3c68a9713f033.tar.gz
eclipse.platform.team-f05d5c4526225094bcab1a574db3c68a9713f033.tar.xz
eclipse.platform.team-f05d5c4526225094bcab1a574db3c68a9713f033.zip
This optimizes the case where many SyncInfos are added to the root set. Instead of firing a change for every single added SyncInfo (which may cause many selection changes), just fire one change per batch. This issue is particularly important when many artifacts under version control are changed during a build. Change-Id: I79cdd54d39e53e83e1a7dd994c8d0f3baa3a51ea Signed-off-by: Julian Honnen <julian.honnen@vector.com>
Diffstat (limited to 'bundles/org.eclipse.team.ui')
-rw-r--r--bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/ActiveChangeSetCollector.java2
1 files changed, 2 insertions, 0 deletions
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/ActiveChangeSetCollector.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/ActiveChangeSetCollector.java
index aad068726..3195a0ac2 100644
--- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/ActiveChangeSetCollector.java
+++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/synchronize/ActiveChangeSetCollector.java
@@ -235,6 +235,7 @@ public class ActiveChangeSetCollector implements IDiffChangeListener {
}
protected void add(SyncInfo[] infos) {
+ rootSet.beginInput();
for (int i = 0; i < infos.length; i++) {
SyncInfo info = infos[i];
if (isLocalChange(info) && select(info)) {
@@ -255,6 +256,7 @@ public class ActiveChangeSetCollector implements IDiffChangeListener {
}
}
}
+ rootSet.endInput(null);
}
private ChangeSet[] findChangeSets(SyncInfo info) {

Back to the top