delphi tedit physical keyboard - delphi

I'm developing an Android-app with Delphi XE6, which should (also) run on Blackberry OS10 with physical keyboards (Q10, PassPort) (by sideloading the APK-file). The whole application works fine on Q10, except for the TEdit-controls. TEdit-controls jsut won't accept input from the physical keyboard. The strange thing however is that the functions InputBox and InputQuery DO work, and they use TEdits too.
Even the simplest application (1 TEdit, 1 Button which calls InputBox) does only work for InputBox, TEdit does not receive input from the physical keyboard.

The FMX.Dialogs.InputBox() and FMX.Dialogs.InputQuery() functions use IFMXDialogService.InputQuery() internally. On Android, IFMXDialogService.InputQuery() displays a standard Android AlertDialog with standard Android EditText controls on it. It does not display a FireMonkey dialog with TEdit controls on it. So it makes sense that Android's own dialog controls would respond to the keyboard since Android is doing all of the UI work.
Blackberry is not an officially supported platform, so there is probably a discrepancy between a "native" Android system and Blackberry's sandboxed Android system that FireMonkey does not like/recognize when it comes to handling hardware input.
Do you have the same problem with the touch-screen keyboard?

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

Windows 10 IOT core virtual keyboard?

I working on IOT device, my touchscreen monitor does not have virtual keyboard. and my machine does not allow physical keyboard.
i already try code from 'digital signage', at first it only work single textfield.
with some little tweak on the code, i can use it for all my textbox.
my real problem is that now i'm using webview, and i need to input some data. in the webview i can't use the virtual keyboard from 'digital signage'.
is there anyone who have solution for this virtual keyboard that can be used on webview?
This may take some modification of the OnScreenKeyboard control, but here's the idea:
Capture the on-screen keyboard output
Use WebView.InvokeScriptAsync method to execute JavaScript on the web page loaded in the WebView
The JavaScript will get the focused textbox in the HTML
Set the value of the textbox to the keyboard output

Firemonkey HD Form will not Minimize when using the Taskbar

I have a Firemonkey HD application targeted for the 32-bit Windows platform. Clicking the applications Minimize button from within the Form works as expected and will restore when its taskbar button is clicked, however it will not Minimize this way. I can only Minimize from within the Form. The Windows live preview thumbnail will also not display the Form when it is hovered over with the mouse.
This happens with just a blank new Firemonkey HD application and I get the same behaviour in Windows XP Professional, Windows 7 Ultimate and Windows 8
I thought at first it could be due to the MainFormOnTaskbar property however this I found out does not apply to Firemonkey and cannot be used.
Is this some limitation of Firemonkey? Why does this happen?

Flex 4.6 TextInput Keyboard on 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).

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