@Override
		public void changed(ObservableValue<? extends String> observable, String oldValue, String newValue) {
			// Of the multiple ways to reset scroll position, this seems to be the most reliable.
			// It's not pixel perfect, but it shouldn't be too jarring since resetting content should
			// not happen often.
			virtualFlow.showAsFirst(firstIndex);
			observable.removeListener(this);
		}
Handles re-scrolling to the same location after the text document has been updated.

@see #setText(String)
recaf-ui/src/main/java/software/coley/recaf/ui/control/richtext/Editor.java