Bug 63389 [projection] Do we need a folding region for the top-level type?
The Java editor is currently defining a folding region for the top-level type. I couldn't find a good use of this folding region and in particular it leads to some visual instability when hovering in the vertical rule in between methods. Therefore I suggest to not add this folding region.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/folding/DefaultJavaFoldingStructureProvider.java
JavaProjectionAnnotation newAnnotation= (JavaProjectionAnnotation) e.next();
				IJavaElement element= newAnnotation.getElement();
				Position newPosition= (Position) updated.get(newAnnotation);
				List annotations= (List) previous.get(element);
				if (annotations == null) {
					additions.put(newAnnotation, newPosition);
				} else {
					Iterator x= annotations.iterator();
					boolean matched= false;
					while (x.hasNext()) {
						Tuple tuple= (Tuple) x.next();
						JavaProjectionAnnotation existingAnnotation= tuple.annotation;
						Position existingPosition= tuple.position;
						if (newAnnotation.isComment() == existingAnnotation.isComment()) {
							if (existingPosition != null && (!newPosition.equals(existingPosition))) {
								existingPosition.setOffset(newPosition.getOffset());
								existingPosition.setLength(newPosition.getLength());
								updates.add(existingAnnotation);
							}
							matched= true;
							x.remove();
							break;
						}
					}
					if (!matched)
						additions.put(newAnnotation, newPosition);
					if (annotations.isEmpty())
						previous.remove(element);
				}
			}