Hi everyone,
First of all, let me say that text mesh pro is a great asset, it makes working with text in unity a lot simpler and easier. Having said that we have encountered some issues with input fields and we were wondering is there a way to overcome them.
Issue #1: Inner caret position (string position) of input field is positioned after all tags
InputField, in which RichTextEditing is disabled, positions caret in string after all tags which causes entered
text to be of the following style, instead of previous.
Consider following text in TMP input field:
âThisIsExampleTextâ
If you position caret in front of âEâ character of âExampleâ and you start typing, you would expect the font NOT to be bold, but in TMP input fields font will be bold. Same goes as if you position in front of âTâ of âTextâ, user expects new text to be bold, but it is actually regular.
As far as I can say, this happens because of input fieldâs inner caret (stringPosition) being positioned after all tags, instead of before.
Example:
1.Consider following text in input field
2.Position in front of the red text and start typing

Is there a way to remedy this?
Issue #2: Selection in TMP InputField is not working correctly when it is rotated
If you create input field, and enable it to be multiline, add long text to it and rotate it (~45 degrees), selection will not work correctly. Also RectMask2D is not working as well.

Issue #3: Indented lines will not get âunindentedâ once they are merged with previous line
When user positions in front of second line (which is indented by 20px with indent tag), and presses backspace, that line is merged with previous line. But the indentation tag remains, and it is positioned over existing text.

Is there way to remove indentation tag?
Issue #4: Sprite tag can be deleted even though RichTextEditing is disabled
If sprite is added in input field, and user positions after it, he is able to start deleting tag by pressing backspace, even though RichTextEditing is disabled.

Is it possible to at least make it so that whole sprite is deleted? Or is it possible to make it unable to be deleted?
I have created a demo project on this issues. You can download it here:
Thank you in advance





