public void MoveHome(bool Select) { CropPosition(); if (CurrentRow.IsCollapsedEndPart) { Position.Y = CurrentRow.Expansion_StartRow.Index; MoveHome(Select); } else { int i = CurrentRow.GetLeadingWhitespace().Length; Position.X = Position.X == i ? 0 : i; RememberXPos(); CaretMoved(Select); } }