In Chrome (of course) this problem doesn’t occur at all.
I thought I had come up with a clever hack – attach a handler to focus of textareas that would add a character and remove it, in order to force whatever it is that’s showing the textarea to do its thing.
What I found was strange. In debugging, I decided to just set the field to “foo” so I could be sure it was doing something.
I click the textarea, it pauses in a debugger in my scrollHack method. At this point, the behavior is correct, in that it shows the input.
I click the “Continue” button in the debugger, and then 2 things happen:
the view adjusts and the input is hidden behind the keyboard (WHY!!!???) AND
js is paused in my debugger again. This is because I change the value of the textarea in this method (I verified by emptying the method and re-running this experiment). I presume it’s angular magic that prevents an infinite loop, but somehow an infinite loops is indeed prevented.
So I click “Continue” again and now we’re out of the debugger and the input is covered by the keyboard (though the value is “foo”, as that’s what it was set to by my scrollHack method). I type “Y” and now the input scrolls into view and you see “fooY” in the textarea.
I remove the breakpoint and click the textarea again so you can see this all in fast motion.
Back at square 1. So much for a hacky work-around.
ughhhh !! I am facing the same issue. The textArea is hidden under keyboard, until a key is pressed. I wonder if somebody has a hackaround issued for that.