Login | Register
My pages Projects Community openCollabNet

Discussions > commits > subclipse svn commit: r5386 - trunk/subclipse/org.tigris.subversion.subclipse.core/src/org/tigris/subversion/subclipse/core/sync/SVNWorkspaceSubscriber.java

subclipse
Discussion topic

There will be a brief maintenance window every Friday at 17:00 Pacific.
For further details, see CollabNet's maintenance and upgrade policy.

Back to topic list

subclipse svn commit: r5386 - trunk/subclipse/org.tigris.subversion.subclipse.core/src/org/tigris/subversion/subclipse/core/sync/SVNWorkspaceSubscriber.java

Author selsemore
Full name Stephen Elsemore
Date 2012-04-24 07:38:32 PDT
Message Author: selsemore
Date: 2012-04-24 07:38:32-0700
New Revision: 5386

Modified:
   trunk/subclipse/org.​tigris.subversion.su​bclipse.core/src/org​/tigris/subversion/s​ubclipse/core/sync/S​VNWorkspaceSubscribe​r.java

Log:
Do not show changes in Sync view if they are hidden by resource filters.
Issue #: 1409


Modified: trunk/subclipse/org.​tigris.subversion.su​bclipse.core/src/org​/tigris/subversion/s​ubclipse/core/sync/S​VNWorkspaceSubscribe​r.java
Url: http://subclipse.tig​ris.org/source/brows​e/subclipse/trunk/su​bclipse/org.tigris.s​ubversion.subclipse.​core/src/org/tigris/​subversion/subclipse​/core/sync/SVNWorksp​aceSubscriber.java?v​iew=diff&pathrev​=5386&r1=5385​&r2=5386
====================​====================​====================​==================
--- trunk/subclipse/org.​tigris.subversion.su​bclipse.core/src/org​/tigris/subversion/s​ubclipse/core/sync/S​VNWorkspaceSubscribe​r.java (original)
+++ trunk/subclipse/org.​tigris.subversion.su​bclipse.core/src/org​/tigris/subversion/s​ubclipse/core/sync/S​VNWorkspaceSubscribe​r.java 2012-04-24 07:38:32-0700
@@ -26,6 +26,8 @@
 import org.eclipse.core.run​time.IProgressMonito​r;
 import org.eclipse.core.run​time.IStatus;
 import org.eclipse.core.run​time.MultiStatus;
+import org.eclipse.core.run​time.Preferences.IPr​opertyChangeListener​;
+import org.eclipse.core.run​time.Preferences.Pro​pertyChangeEvent;
 import org.eclipse.core.run​time.Status;
 import org.eclipse.team.cor​e.RepositoryProvider​;
 import org.eclipse.team.cor​e.TeamException;
@@ -52,11 +54,13 @@
 import org.tigris.subversio​n.subclipse.core.uti​l.Util;
 import org.tigris.subversio​n.svnclientadapter.S​VNStatusKind;
 
-public class SVNWorkspaceSubscriber extends Subscriber implements IResourceStateChangeListener {
+public class SVNWorkspaceSubscriber extends Subscriber implements IResourceStateChangeListener, IPropertyChangeListener {
 
     private static SVNWorkspaceSubscriber instance;
     private HashMap<IResource, IResource[]> changesMap = new HashMap<IResource, IResource[]>();
     
+ private boolean ignoreHiddenChanges = SVNProviderPlugin.ge​tPlugin().getPluginP​references().getBool​ean(ISVNCoreConstant​s.PREF_IGNORE_HIDDEN​_CHANGES);
+
     /** We need to store unchanged parents in remoteSyncStateStore.
      * To distinguish them from real changed resources we store this dummy data instead for them */
     private static final byte[] DUMMY_SYNC_BYTES = new byte[] {-1, -2, -3, -4};
@@ -78,6 +82,7 @@
 
     private SVNWorkspaceSubscriber() {
         SVNProviderPlugin.ad​dResourceStateChange​Listener(this);
+ SVNProviderPlugin.ge​tPlugin().getPluginP​references().addProp​ertyChangeListener(t​his);
     }
 
     /* (non-Javadoc)
@@ -173,7 +178,11 @@
             return null;
         if( ! isSupervised( resource ) )
             return null;
-
+
+ if (ignoreHiddenChanges && Util.isHidden(resource)) {
+ return null;
+ }
+
         //LocalResourceStatus localStatus = SVNWorkspaceRoot.get​SVNResourceFor( resource );
         LocalResourceStatus localStatus = SVNProviderPlugin.ge​tPlugin().getStatusC​acheManager().getSta​tus(resource);
 
@@ -250,7 +259,6 @@
             
             boolean descend = (depth == IResource.DEPTH_INFINITE)? true : false;
             boolean showOutOfDate = SVNProviderPlugin.ge​tPlugin().getPluginP​references().getBool​ean(ISVNCoreConstant​s.PREF_SHOW_OUT_OF_D​ATE_FOLDERS);
- boolean ignoreHiddenChanges = SVNProviderPlugin.ge​tPlugin().getPluginP​references().getBool​ean(ISVNCoreConstant​s.PREF_IGNORE_HIDDEN​_CHANGES);
             StatusAndInfoCommand cmd = new StatusAndInfoCommand​(SVNWorkspaceRoot.ge​tSVNResourceFor( resource ), descend, showOutOfDate, true );
             cmd.setCallback(new CancelableSVNStatusC​allback(monitor));
             cmd.run(monitor);
@@ -361,4 +369,10 @@
             remoteSyncStateStore​.flushBytes(resource​s[i], IResource.DEPTH_INFINITE);
         }
     }
+
+ public void propertyChange(Prope​rtyChangeEvent event) {
+ if (event.getProperty()​.equals(ISVNCoreCons​tants.PREF_IGNORE_HI​DDEN_CHANGES)) {
+ ignoreHiddenChanges = SVNProviderPlugin.ge​tPlugin().getPluginP​references().getBool​ean(ISVNCoreConstant​s.PREF_IGNORE_HIDDEN​_CHANGES);
+ }
+ }
 }

« Previous message in topic | 1 of 1 | Next message in topic »

Messages

Show all messages in topic

subclipse svn commit: r5386 - trunk/subclipse/org.tigris.subversion.subclipse.core/src/org/tigris/subversion/subclipse/core/sync/SVNWorkspaceSubscriber.java selsemore Stephen Elsemore 2012-04-24 07:38:32 PDT
Messages per page: