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.
Fixes vaadin/vaadin-text-field-flow#273
Description:
paste
is also triggeringinput
event.In case this event is triggered when value wasn't changed (i.e. value was replaced with
paste
, ormaxlength
is set andpaste
is done),__userInput
will be set totrue
here, but updating the value won't pass polymer dirty check, so the__userInput
will be preserved for the next programmatic value update and inputvalue
won't be updated.Important note:
It's possible to check for specifically
paste
action (i.e. withe.inputType
or withinonPaste
), but it doesn't make sense to preserve__userInput
in any case if dirty check won't be passed forvalueChange
afterwards, so general short solution is implemented in the PR.(It's easier to test and covers the
paste
cases, cannot come up with other cases when value won't be changed andinput
event is triggered)