Bug 66234 [projection] Revert file sometimes does not display the imports
I was able to recreate the scenario, I have a Java file in a Java project as /* * Created on Jun 8, 2004 * * TODO To change the template for this generated file go to * Window - Preferences - Java - Code Style - Code Templates */ package com; import java.net.URL; import java.util.Date; /** * @author admin * * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Style - Code Templates */ public class Test { Date xyz; URL abc; } I open it in the editor, delete the keyword 'package' so that that line only says com. Now I right click on file and select 'Revert File'. Notice that the imports list disappears. This is in M9.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditor.java
if (astRoot == null || selection == null)
			return;
		
		IDocument document= getSourceViewer().getDocument();
		if (document == null)
			return;
				
		List matches= new ArrayList();
		String message;
		if (fMarkExceptionOccurrences || fMarkTypeOccurrences) {
			ExceptionOccurrencesFinder exceptionFinder= new ExceptionOccurrencesFinder();
			message= exceptionFinder.initialize(astRoot, selection.getOffset(), selection.getLength());
			if (message == null) {
				matches= exceptionFinder.perform();
			}
		}
		if (matches.size() == 0) {
			if (fMarkMethodExitPoints || fMarkTypeOccurrences) {
				MethodExitsFinder finder= new MethodExitsFinder();
				message= finder.initialize(astRoot, selection.getOffset(), selection.getLength());
				if (message == null) {
					matches= finder.perform();
				}
			}
			if (matches.size() == 0) {
				ASTNode node= NodeFinder.perform(astRoot, selection.getOffset(), selection.getLength());
				if (!(node instanceof Name)) {
					if (!fStickyOccurrenceAnnotations)
						removeOccurrenceAnnotations();
					return;