nikitonsky: Cursor jumps back to the original position if you go slightly off center. Instead, it should land at the closest valid position