Bug 65268 [projection] editor is missing collapse all action for code folding
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditor.java
if (document == null)
			return;
		if (document instanceof IDocumentExtension4) {
			int offset= selection.getOffset();
			long currentModificationStamp= ((IDocumentExtension4)document).getModificationStamp();
			if (fMarkOccurrenceTargetRegion != null && currentModificationStamp == fMarkOccurrenceModificationStamp) {
				if (fMarkOccurrenceTargetRegion.getOffset() <= offset && offset <= fMarkOccurrenceTargetRegion.getOffset() + fMarkOccurrenceTargetRegion.getLength())
					return;
			}
			fMarkOccurrenceTargetRegion= JavaWordFinder.findWord(document, offset);
			fMarkOccurrenceModificationStamp= currentModificationStamp;
		}
		List matches= null;
		if (fMarkExceptions || fMarkTypeOccurrences) {
			ExceptionOccurrencesFinder exceptionFinder= new ExceptionOccurrencesFinder();
			String message= exceptionFinder.initialize(astRoot, selection.getOffset(), selection.getLength());
			if (message == null) {
				matches= exceptionFinder.perform();
				if (!fMarkExceptions && !matches.isEmpty())
					matches.clear();
			}
		}
		if ((matches == null || matches.isEmpty()) && (fMarkMethodExitPoints || fMarkTypeOccurrences)) {
			MethodExitsFinder finder= new MethodExitsFinder();
			String message= finder.initialize(astRoot, selection.getOffset(), selection.getLength());
			if (message == null) {
				matches= finder.perform();
				if (!fMarkMethodExitPoints && !matches.isEmpty())
					matches.clear();
			}