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
Related
I download the Stack Windows Manager from Microsoft store. Someone introduced it to me and said it is a great program.
Oddly, after installing it and setting it up, I cannot find out how to start using it? There is no instruction to show me how to at least organize my desktop into this "layout tool". Is there a video anywhere?
At the first launch on each screen it shows you a few layouts to select from.
After you made the selection, either use Win+Arrow keys to move windows around, or drag windows between areas with middle mouse button (usually it is also the scroll button).
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?
I am programming a Delphi (XE3) application where mouse position is important, but I would like to be able with another mouse to be able to set breakpoints without moving the primary mouse position. I may be pressing shift or control in the application I am trying to debug, so alt-tabbing to the IDE and setting a breakpoint with the keyboard keyboard won't work. Can Windows 7 easily be set up to do this?
It's possible to attach multiple keyboards and mice to a computer, and various video games can take advantage of the multiple input devices, but the OS in general does not take advantage of that. No matter how many keyboards and mice you attach, there's still just one input queue and one cursor on the screen.
If all you need is to set breakpoints without moving the mouse, then you can navigate the input caret to the desired line with the keyboard and then press F5 to toggle breakpoints.
If you need to be able to debug without interfering with the program at all, then you might need to use remote debugging. Although the documentation suggests using Remote Desktop to operate the remote program while you're sitting at the local system, that's not what you want to do in this situation because you'll still have just one set of input devices. Instead, log on to the remote computer from elsewhere (either directly, or via Remote Desktop on a third computer). It'll help to have two computers you can access from the same chair.
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).
For single form UI's the form assistant in the mobile safari virtual keyboard doesn't provide much value and reduces the useable space in the viewport. Is it possible to remove this section of the keyboard for forms that do not benefit from this?
In essence, you must wait till the keyboard responds and then forcibly grab and remove that top bar. It's not pretty and definitely not perfect but it is a starting place. I'll post the refinement of this process as I work on it myself.
Here is the question. I implemented this using Trigger.IO and native plugins but, naturally, you can ignore that and just run it on your UIWebView: How can I hide Form Assistant with iOS native plugins using Trigger.IO?