Cursor jumps to end of text in input fields

Ive upgraded to Elm 0.19 and have upgraded my Style Elements package to 5.0.1

Now, when I enter text at the beginning of a text field that has text in it, the cursor jumps to the end of the text after each key press, and stays there. A multiline textarea does not suffer from this, it only appears to be single line text fields.

Has anybody else seen this behaviour? If its just me then I guess it must be a bug in my code.

I do intend to swap out Style Elements for Elm UI but thats going to be a fair re-write so was hoping to fix this issue first.

This is a bug and already reported.

(This problem prevent us from migrating the production app to 0.19.)

OK thanks for the info.

I saw your issues on GitHub and I could reproduce Ellie examples from Safari, but having tested my partially moved application I could not reproduce the issue!

I will push it to public staging server, so you can take a look, but basically that issue doesn’t appear in my App.
I didn’t want to make noise on GitHub, since I didn’t investigated WHY doesn’t happen, but I can assure you that I used vanilla Elm way of populating that text input field.

This is fixed on the latest elm/virtual-dom@1.0.1! :tada:

@popara

I can assure you that I used vanilla Elm way of populating that text input field.

I don’t know what is “vanilla Elm way”, but maybe you mean not assigning value could solve this problem? So,

input [ onInput Input ] []

instead of

input [ value model.value, onInput Input ] []

The former also works well on simple cases where you don’t need to reset the value programatically.

2 Likes

Updated virtual-dom this morning, all good now.

Actually I thought the former, with input type specified, eg.

input [ type_ "text", value model.value, onInput Input ] []

Maybe having a type specified elevated the issue.

That is now beside the point, because now it will work everywhere ^^

Good luck migrating to 0.19!

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.