Android: Laggy input forms, inconsistent value input, keyboard overlays

Using Android 4.2.2, Ionic beta-6, Cordova 3.4.1-0.1.0

Using forms of any kind, whether or not they are wrapped like this…

<label class="item item-input">
  <input type="text" placeholder="Title" ng-model="post.title"/>

…will be incredibly laggy. So much so it’s actually seems like inputting text from the Android keyboard causes values to be lost or “miss a beat” so to speak - It’s completely unusable unfortunately.

The keyboard itself actually seems to overlay the form fields rather then “jumping” below the currently selected one.

I’m wondering if any of these issues are known or if there are Github tickets I could follow?

Just a few questions:

@mhartington Updated post to include version details.

I did not have the keyboard plugin installed - thanks for bringing this to my attention. I just installed it. Things are working smoother. This is, the values seem to be pretty consistently adding themselves to the form fields without skipping.

Does this plugin aim to solve that problem and others associated with Cordova app using the native keyboard?

As for the keyboard overlaying the input fields - I do see the keyboard jumping now but seems like its being blocked by a lack of page height real-estate. Reading the docs I see some talk about this using adjustResize? The form fields are inside a scrollview as instructed. Any ideas on this?

Our keyboard plugin is a forked version of cordova’s keyboard plugin, just tweaked to fit out needs. We had a dev dedicated to just working on this :smile:

For the scrolling issues, take a look at the github repo for the plugin.

Well I’m not trying to disable the scroll. I like the scroll but it seems like the total page height isn’t large enough to “fit” the keyboard when it opens.

For example if my form field is at the bottom of the page and I toggle an input - the keyboard will open but appear to be flush to the bottom of the page. It’s causing overlay onto the other elements. I almost feel like the scrollview should add the total height of the keyboard back into the content area so that this overlap doesn’t happen.

Hmm alright. I’ll bring this up to the devs and see what the consensus is about how the scroll view should be handled.

Yea I mean it’s not something urgent. The simple obvious temporary fix is just to add some space at the bottom of the page. If you guys did want to handle that dynamically though a good test case to reproduce is building a form at the bottom of a scrollview like I mentioned.

Well we’re always doing testing to improve performance where ever we can