Skip to main content
Inspiring
August 23, 2013
Question

Crazy Textfield Bug on GPU with softkeyboardbehavior - Android only

  • August 23, 2013
  • 3 replies
  • 3121 views

Im am encountering a very weird bug on Android only (i think every android device, as I've tested, Droid Bionic, Galaxy S3, Nexus, Galaxy Tab)

In my -app.xml, i have .

<renderMode>gpu</renderMode>

<softKeyboardBehavior>pan</softKeyboardBehavior>

in my application, i have many textfields. When i give focus to a textfield, it does correctly and pans up as it should. Once the softkeyboard hides is when all the craziness starts happening....

Everywhere I now click inside my application, AIR thinks I'm clicking about 30-40 pixels below that. Every rollover/ textfield/ anything interactive, will only respond if I touch 30-40 pixels above the actual hit area.

It's like somehow, when the application did the "pan", the distance that it panned is now the distance I have to put my finger above each button to interact with it.

This does not happen if I change it to

<softKeyboardBehavior>none</softKeyboardBehavior>

but now I dont get the panning....

This only happens in GPU mode, in CPU mode, using none or pan works correctly as expected.

Now lets see watch the view count for this post rise with no replies ever!!! yay

I even made a video to show the craziness: http://www.youtube.com/watch?v=0KtPWW6sHlg

This topic has been closed for replies.

3 replies

Inspiring
September 16, 2013

bump, please please vote for this bug! https://bugbase.adobe.com/index.cfm?event=bug&id=3627285

Inspiring
September 26, 2013

sorry... I don't want this thread to get buried. Please vote on this bug people!

Basically this bug makes all Display-List Android App unusable if they contain lots of textfields.... it is completely inevitable that this is/will/does happen to lots of people. I can't stand that a serious bug that can make/break an app must be first voted on before adobe even gives it a thought.

Inspiring
August 26, 2013

I've come across some very interesting results....

As it turns out... I was able to replicate the issue in a sample project. After I did so, I also took a look at your sample project to compare what was different....

The difference is.. I'm using a Flex mobile Project, your using just AIR alone.

Using your project I was able to reproduce your results and see the behavior correctly (even though on occassion I noticed what seems like the screen locking for a sec when going between textfields) but least its responding to exactly where you press, not 40 pixels above.

Here is my sample project. https://dl.dropboxusercontent.com/u/67123506/Test.zip

It will only happen on textfields that are towards the bottom of the app enough to cause it to pan when raising the softkeyboard.

Inspiring
August 26, 2013

Scratch any progress mentioned in my previous post....

so after moving my project out of the flex wrapper, I am still having this problem. (though not all is lost because now I can do telemetry) I went to double check... and even your example is in fact reproducing the error... its just a matter of how you trigger it. (I didnt fully carry out the correct test on your example). To better see this in your example, reduce the hit area of each textfield....make each textfield  40 pixels in height.

1 of the text fields MUST be towards the bottom of the app enough to cause it to pan when raising the softkeyboard.

Run your example.

Click on the "third Text Field....."

Now click on outside to lower keyboard. Now try and click on any of the textfields and you will not be able too.

When I mentioned I was able to reproduce your results although there was a  locking hiccup.... that hiccup was in fact the bug.

Another thing to mention is... when the bug happens... the app does not do any panning (probably the cause?)

Adobe Employee
August 27, 2013

Hi,

I tried with your sample project attached and found that if I clicked outside the textField after tabbing in the text field, softkeyboard remain raised. Anyways I managed to make it down and then I tried again to tab on the textField, softkeyboard is not raising even when tabbing 40 - 50 px above.

In my sample application, I applied your suggestions but still it is working fine for me. And yes, I found panning is not working on Android and we have logged a internal bug for it.

I am still trying to reproduce the issue you have mentioned. I request you to share the actionscript project that you had changed recently to reproduce the issue. Also, the device used with OS version.

Regards,

Nimit

Adobe Employee
August 25, 2013

This is really unfortunate that you are seeing this problem. I tried the same case mentioned above on Nexus 7(v4.3) with AIR SDK 3.8 available at http://www.adobe.com/devnet/air/air-sdk-download.html and everything is working fine. I have attached the sample appliation at
https://www.dropbox.com/s/1r0tp4s38jpaig9/PanGPUTextFieldBug.zip for your reference.

Could you please provide more information like it's a single line or multiline text Field, AIR SDK verison, properties used in the textField which help us to reproduce the problem. Also, I request you to provide a sample application  if possible.

Regards,
Nimit

Inspiring
August 26, 2013

Thanks for your reply.

The textfields are single line, using an embeded font "Utsahh" and a system font "Arial" (For password fields). I dont know if it makes a difference, but the textfields are not being created in actionscript, they are sitting in a movieclip instance from a SWC.

Everything works perfectly in GPU with softkeyboard panning disabled, and CPU with panning enabled.... just not GPU with panning enabled.

I am using AIR 3.7 (do you recommend to use a beta built 3.8 for public release?)

EDIT: woops didnt realize that 3.8 wasnt beta anymore.... I will try it and give my results

Inspiring
August 26, 2013

Well its great to be up to date but sadly using AIR 3.8 did not fix my problem.