Fix: fixing cursor position in case of a bad input or bad pasting #39
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a bug: if you input an illegal character or paste an illegal text the cursor used to move right, whereas the value hadn't had changed. This commit corrects the issue by preserving cursor position on each keyDown and restoring it on bad validation.
Also, some code refining was done: getting ride of "var" declarations, using more "destructuring", using arrow functions and changing React.Component to React.PureComponent.
Also, I revealed more issues, but hasn't figured out how to fix them easily.
This looks a bit frustrating. Users often mistake dot and comma, so auto-substitution would be helpful.
It is inconvenient and confusing. First time I didn't understand what was wrong and why I can't make a fractional part.
UPD. I managed to propose a fix for issue "2" in the last commit.