Bug 27512 Auto-indent levels broken for cut and paste
On M3: 1) Double-click on the opening brace '{' of a method. 2) Cut the method body. 3) Paste the method body. Problem: indentation is mangled incorrectly.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/JavaAutoIndentStrategy.java
boolean formatFirstLine= prefix.trim().length() == 0;
			String formattedParagraph= format(strippedParagraph, indent, lineDelimiter, formatFirstLine);
			
			if (formatFirstLine) {
				int end= command.offset + command.length;
				command.offset= lineOffset;
				command.length= end - command.offset;
			}
			command.text= formattedParagraph;
		} catch (BadLocationException e) {
			JavaPlugin.log(e);
		}
	}
	/**
	 * Returns the displayed width of a string, taking in account the displayed tab width.
	 * The result can be compared against the print margin.
	 */
	private static int calculateDisplayedWidth(String string) {
		final int tabWidth= JavaPlugin.getDefault().getPreferenceStore().getInt(PreferenceConstants.EDITOR_TAB_WIDTH);
		int column= 0;
		for (int i= 0; i < string.length(); i++)
			if ('\t' == string.charAt(i))
				column += tabWidth - (column % tabWidth);
			else
				column++;
		return column;
	}
	private static boolean isLineEmpty(IDocument document, int line) throws BadLocationException {
		IRegion region= document.getLineInformation(line);
		String string= document.get(region.getOffset(), region.getLength());