Bug 50386 Autoindent/Smart Tab in case statement
1: case SWT.TRAVERSE_ESCAPE : 2: fTableViewer.cancelEditing(); 3: e.doit= true; Pressing Tab at beginning of line 3 removes one tab character from line 3. It shouldn't. Same indentation error for Smart Return, Correct Indentation, ... for all lines which are 2+ lines after the case keyword.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaIndenter.java
while (true) {
			nextToken();
			
			if (fToken == closeToken) {
				depth++;
			} else if (fToken == openToken) {
				depth--;
				if (depth == 0)
					return true;
			} else if (fToken == Symbols.TokenEOF) {
					return false;
			}
		}
	}
	
	
	private int prefTabLength() {
		int tabLen;
		JavaCore core= JavaCore.getJavaCore();
		JavaPlugin plugin= JavaPlugin.getDefault();
		if (core != null && plugin != null)
			if (JavaCore.SPACE.equals(JavaCore.getOption(JavaCore.FORMATTER_TAB_CHAR)))
				
				tabLen= -1; 
			else
				 
				
				tabLen= plugin.getPreferenceStore().getInt(PreferenceConstants.EDITOR_TAB_WIDTH);
		else
			tabLen= 4;