Keyboard Support

Contact and Search Homepage

Header bottom


On this page

KeymanWeb 2.0 Events

A number of KeymanWeb events are exposed to allow the designer of a user interface to control the appearance and behavior of user interface elements. Standard event-processing requires all arguments to be passed as an array (object) with named member variables.

Event nameNamed argumentsDescription
kmw.controlfocusedtarget,activeControlinput element receives focus
kmw.controlblurredtarget,event,isActivatinginput element loses focus
kmw.keyboardregisteredinternalName,language,keyboardName,languageCodekeyboard 'stub' processed (for listing as available keyboard)
kmw.keyboardloadedinternalNamekeyboard code loaded
kmw.beforekeyboardchangeinternalName,languageCodekeyboard input language about to change
kmw.keyboardchangeinternalName,languageCodekeyboard input language changed
kmw.loaduserinterface(None)allow ui initialization
kmw.unloaduserinterface(None)allow ui clean-up
osk.showx,t,userLocatedOSK displayed
osk.hideHiddenByUserOSK hidden
osk.resizemove(None)OSK resized or moved on desktop

Object events are handled in user code by passing the handler entry to the object, using addEventListener().

So to define a user function to handle the KeymanWeb core kmw.keyboardchange event, include:


or a user function to modify the user interface when the on-screen keyboard is displayed: