private void textChanged(JSpinner spinner, JTextField textField) {
		SwingUtilities.invokeLater(() -> {
			try {
				int caretPosition = textField.getCaretPosition();
				int length = textField.getText().length();
				int fromEnd = length - caretPosition;
				spinner.commitEdit();
				length = textField.getText().length();
				textField.setCaretPosition(Math.max(length - fromEnd, 0));
			}
			catch (ParseException e) {
				// do nothing
			}
			valueChanged();
		});
	}
Constructor.

@param constraint Floating-point constraint for which this component is an editor.
Ghidra/Framework/Docking/src/main/java/docking/widgets/table/constrainteditor/DoubleRangeConstraintEditor.java