Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcdamus2013-02-14 15:17:55 +0000
committercdamus2013-02-14 15:17:55 +0000
commitbd27368c7df9b55cb43de2c620a8b2db7cfa8be1 (patch)
treebf712edac6baad9f990e551c8717fae6783ebb7a
parent0b51cbcda6510f2cb1622380aff65c059343419a (diff)
downloadorg.eclipse.papyrus-bd27368c7df9b55cb43de2c620a8b2db7cfa8be1.tar.gz
org.eclipse.papyrus-bd27368c7df9b55cb43de2c620a8b2db7cfa8be1.tar.xz
org.eclipse.papyrus-bd27368c7df9b55cb43de2c620a8b2db7cfa8be1.zip
Fix refreshing of empty repo on connect/disconnect.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=398693
-rw-r--r--plugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/PapyrusRepository.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/plugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/PapyrusRepository.java b/plugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/PapyrusRepository.java
index 7629b85c485..d453d673b34 100644
--- a/plugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/PapyrusRepository.java
+++ b/plugins/cdo/org.eclipse.papyrus.cdo.core/src/org/eclipse/papyrus/cdo/internal/core/PapyrusRepository.java
@@ -327,7 +327,12 @@ public class PapyrusRepository
masterView = view;
topResourceNodes = getElements();
adaptMasterView(view);
- fireElementsAddedEvent(topResourceNodes);
+
+ if (topResourceNodes.length > 0) {
+ fireElementsAddedEvent(topResourceNodes);
+ } else {
+ fireEvent(); // just refresh my presentation
+ }
}
return result;
@@ -411,8 +416,10 @@ public class PapyrusRepository
masterView = null;
CDOResourceNode[] removedNodes = topResourceNodes;
topResourceNodes = null;
- if (removedNodes != null) {
+ if ((removedNodes != null) && (removedNodes.length > 0)) {
fireElementsRemovedEvent(removedNodes);
+ } else {
+ fireEvent(); // just refresh my presentation
}
}
} finally {
@@ -589,7 +596,7 @@ public class PapyrusRepository
if (resNode.isRoot()) {
// the event doesn't provide a revision delta, so calculate
// a delta
-
+
Set<CDOResourceNode> currentNodes = Sets
.newLinkedHashSet(Arrays.asList(getElements()));
Set<CDOResourceNode> newNodes = Sets

Back to the top