RESOLVED - bug 168298: classes always filtered under 3.3M4 Referenced Libraries node
https://bugs.eclipse.org/bugs/show_bug.cgi?id=168298
diff --git a/org.eclipse.mylyn.java.ui/src/org/eclipse/mylyn/internal/java/JavaStructureBridge.java b/org.eclipse.mylyn.java.ui/src/org/eclipse/mylyn/internal/java/JavaStructureBridge.java
index 84d36d3..d4ee56b 100644
--- a/org.eclipse.mylyn.java.ui/src/org/eclipse/mylyn/internal/java/JavaStructureBridge.java
+++ b/org.eclipse.mylyn.java.ui/src/org/eclipse/mylyn/internal/java/JavaStructureBridge.java
@@ -215,10 +215,9 @@
 			return adapter instanceof IJavaElement;
 		}
 
-		boolean accepts = object instanceof IJavaElement || object instanceof ClassPathContainer
+		boolean accepts = object instanceof IJavaElement || object instanceof PackageFragmentRootContainer
 				|| object instanceof ClassPathContainer.RequiredProjectWrapper || object instanceof JarEntryFile
 				|| object instanceof IPackageFragment || object instanceof WorkingSet 
-				|| object instanceof PackageFragmentRootContainer
 				|| isWtpClass(object);
 		
 		return accepts;
@@ -232,9 +231,9 @@
 	public boolean canFilter(Object object) {
 		if (object instanceof ClassPathContainer.RequiredProjectWrapper) {
 			return true;
-		} else if (object instanceof ClassPathContainer) { 
-			// HACK: check if it has anything interesting
-			ClassPathContainer container = (ClassPathContainer) object;
+		} else if (object instanceof PackageFragmentRootContainer) { 
+			// since not in model, check if it contains anything interesting
+			PackageFragmentRootContainer container = (PackageFragmentRootContainer) object;
 
 			Object[] children = container.getChildren();
 			for (int i = 0; i < children.length; i++) {