Flex 4.6 TextInput Keyboard on iOS - ios

I have migrated my app from Flex 4.5.1 to Flex 4.6 and the TextInput click event was broken so I do this « skinClass="spark.skins.mobile.TextInputSkin" » (like was suggest here http://help.adobe.com/en_US/flex/mobileapps/WS82181550ec4a666a39bafe0312d9a274c00-8000.html) and all seems work (tested in my Android and seems ok) but one user with iOS 5.1 complained that now the keyboard dont popup ?
Also complained for the TextArea that I dont have code in my extended component but also use the skin spark.skins.mobile.TextAreaSkin so the layout became similiar in my textinputs.

TextInput is broken in Flex 4.6
It doesn't scroll properly when default TextStageSkin is used
It causes some ugly artifacts when the TextStageSkin is used and keyboard resizes the view:
ugly flex TextInput bugs
It doesn't show proper keyboard type when TextInputSkin is used and softKeyboardType is set to something...
My guess this is a bug in AIR SDK, as there is noting in Flex SDK source which looks like it can be corrected. They gave us an SDK where none of the skins works properly. I hope Apache Flex will be much more mature. But again, this looks like an AIR issue to me.
GL.

Well, I had the opportunity to test a iPad 2 and using the TextInput with skin spark.skins.mobile.TextInputSkin, the events of flex works but does not open the keypad in iOS and with skin (stagetext new skin), keypad open in iOS (and with native access to spell check, etc ...) but do not run flex events. Since we do not need both situations simultaneously works (which fortunately it's my case for now).

Related

Control Visibility of Gnome-3 On Screen Keyboard in Electron App

I'm working on an Electron application that is intended to run on a panel touchscreen computer running Debian. I have enabled the on-screen keyboard board in desktop settings and can see it come up in other applications (such as terminal). However, the on screen keyboard does not come up inside of my electron app when a text input gains focus. I have read that this might be some sort of weirdness with Chromium (see https://askubuntu.com/questions/939616/why-the-onboard-on-screen-keyboard-doesnt-auto-show-in-google-chrome) but have unable to find any workarounds.
I suppose that my question is in two parts:
1 - is there anything that I can do to get Electron to play nicely with the gnome 3 built in keyboard?
2 - is there any program that I can call that would show and/ or hide the on-screen keyboard?
The OS that I am targeting is Debian version 10.3 with the Gnome desktop.
After quite a bit of research, I learned that, in order to trigger the on-screen keyboard for Gnome, an application must be developed around GTK. Any application that fails to do so is considered "foreign" on the Gnome desktop. Apparently, Chrome falls into this category and Electron built apps as well because they are built on Chromium.
With all that said, it is still possible for a foreign application to send on-screen keyboard events through dbus. The issue at CentOS On screen keyboard not showing for Jawa Swing Text entry fields describes these events as follows:
To turn the keyboard on:
dbus-send --type=method_call --dest=org.gnome.Caribou.Keyboard /org/gnome/Caribou/Keyboard org.gnome.Caribou.Keyboard.Show uint32:0
To turn the keyboard off:
dbus-send --type=method_call --dest=org.gnome.Caribou.Keyboard /org/gnome/Caribou/Keyboard org.gnome.Caribou.Keyboard.Hide uint32:0

iPhone/iPad Status bar overlapping on app's header

I am using worklight 6.2 Consumer Edition on WAS Liberty Profile 8.5.5.1 Server. I am using jQuery Mobile 1.4.2 to develop UI. When I install app on iPhone/iPad, status bar of phone is hiding some part of my app's header.
How can I fix this issue (if its an issue)?
This works fine in a default new app with jQuery Mobile that was generated by Worklight Studio. As you can see, the status does not overlap the text.
You can also take a look at the Worklight Starter with jQuery Mobile edition, that also works on iOS w/out the status bar covering the top of app. Compare your CSS.
You need to provide a screen shot of what you're seeing, as well as provide a sample application where you are experiencing it. This issue originates from your code. Provide code.
One possible solution would be to add some margin-top to whichever element is at the top of your applicaiton's HTML.

Flex 4.6 IOS screen doesn't unpan after softkeyboard is dismissed

I am writing an app for IOS and Android using Flex 4.6. Everything is working fine on Android, but on IOS after the softkeyboard appears and the screen pans, when the keyboard is dismissed the screen never pans back down. The bottom half of the screen stays white and the top half remains shifted out of view. I have been searching online and through my code trying to figure out what could be wrong and I've had no luck. I have been running the program in debug mode, but no AS3 error messages are shown. My trace()s are printed, and the app will continue to work but obviously you are unable to interact with the top half of the app. Everything works fine if I set the softkeyboardBehavior in the XML to none, but then the user can't see where they are typing.
I have only been able to test this on my IPod touch with IOS 5.0.1. When I try to run my project in Flash Builders simulator neither the Android nor the IOS version will get past the splash screen.
Any help would be greatly appreciated
Thank you
I have seen that the softKeyboardDeactivate event from TextInput is not fired, as other actions that the unpan should cause are neither fired.
It seems it's a Flex 4.6 version bug. (http://forums.adobe.com/message/4068144).
I've found a workaround, it's a little tricky but it works.
Put a new TextInput hidden on top of the View, then on focusOut event on the original TextInput, force focus on the hidden TextInput. Softkeyboard event will be activated for that TextInput and the pan will return to the top of the View, then take off the focus from the new TextInput and the softkeyboard will disappear.
The user will not notice about this tricky solution.
<s:TextInput id="ghost" x="-100" y="0" width="0" height="0"/>
<!-- ... -->
<s:TextInput id="original" focusOut="textInputFocusOutHandler(event)"/>
...
public function textInputFocusOutHandler(event:FocusEvent):void
{
this.ghost.setFocus();
callLater(this.setFocus);
}
Try adding the "enter" attribute to your TextInput. It worked for me but now I have the issue where it jumps vs. pan when the soft keyboard deactivates.
It seems that my problem was that I was using the StageText skin for my text boxes, which adobe says in the documentation causes panning and any type of scrolling not to work. Switching to the old TextInput skin seems to fix the problem, but you loose all the native features for the soft keyboard, which pretty much ruins your user experience unfortunatly.

BlackBerry issue with Textfields in OS6

I'm developing a BlackBerry app and using J2ME Polish to do the styling. So, I'm using TextFields with styling from Polish to get user input.
The TextFields work fine in OS versions other than 6. But when testing on devices running OS 6, the Textfields break.
Basically in other versions of the OS, when focus is on a TextField then the left and right buttons move the cursor around in the TextField and up and down moves focus to the next/previous item. However, in OS6 up and down instead navigate to the beginning and end of the TextField respectively and focus gets stuck so I'm not able to move focus to the next item.
As a workaround I tried to capture the down button using handleKeyReleased, but when focus is on the TextField the down button isn't even being captured.
Does anyone know of any other way to solve this?
Issue resolved by explicitly using the BlackBerry JDE version 6 to build the app.

Using MIDP Canvas keyPressed / keyCode on BlackBerry to get Canvas.FIRE for trackball click

I have a MIDP application that I would like to run on BlackBerry devices. It's quite generic, the one gotcha is that when I override the Canvas keyPressed(int keyCode) method, I'm not capturing the trackpad click events.
Normally you would use getGameAction(keyCode) == FIRE to capture the center of the navigation pad button on MIDP devices, but in this case no luck. I've done extensive searching of blackberry forums and I can't find any clear solution. Is they keyPressed method even called when the trackball button is clicked? What is the appropriate keyCode?
I know that if I move over the BlackBerry SDK I can use key listeners and trackpad clicked type events, but I would like to first attempt to find a solution that is pure MIDP and does not require multiple builds.
According to the RIM javadoc for the Canvas class the trackball keycode is -8. That's a JDE 4.5 link, but it's the same in 4.3, 4.6 and 4.7. So you could put in some conditional behaviour for BlackBerry handsets that would look for that code.

Resources