Bug 113159 CUEditor won't let me insert just one TAB
Given the following code: Pattern pattern = selected ? new Pattern(null,...) : new Pattern(nul,...); <<CARET>>g.setBackgroundPattern(pattern); I cannot insert a single TAB at the Caret location. typing TAB inserts two TABs. BACKSPACE deletes both.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/actions/IndentAction.java
document.replace(offset, length, indent);
			
			if (fIsTabAction && indent.length() > currentIndent.length() && JavaPlugin.getDefault().getPreferenceStore().getBoolean(PreferenceConstants.EDITOR_SMART_BACKSPACE)) {
				ITextEditor editor= getTextEditor();
				if (editor != null) {
					final SmartBackspaceManager manager= (SmartBackspaceManager) editor.getAdapter(SmartBackspaceManager.class);
					if (manager != null) {
						try {
							
							ReplaceEdit smart= new ReplaceEdit(offset, indent.length(), deletedText);
							
							final UndoSpec spec= new UndoSpec(
									offset + indent.length(),
									new Region(caret, 0),
									new TextEdit[] { smart },
									2,
									null);
							manager.register(spec);
						} catch (MalformedTreeException e) {
							
							JavaPlugin.log(new Status(IStatus.ERROR, JavaPlugin.getPluginId(), IStatus.OK, "Illegal smart backspace action", e)); 
						}
					}
				}
			}
			
			return true;
		} else
			return false;
	}