I needed this feature and I have done it by some monkey patching. I also did some language specific changes like support for RTL languages etc. Once I will be satisfied with the changes I made, I will release it for sure.

I have problems when I enable languageSelection in ExtJS 3.2.1. First, I have to put readOnly:false in language selection combo to be able to select a new language. But then, when buildKeys function is called on select listener of the combo, I get an error at line 396: "this.Languages[this.language] is undefined".

Concern about Virtual keyboard plugin

I have downloaded this plugin zip, and tried to run at my end. What I did is given below:
1) Put virtualkeyboard folder in extjs-4.1.
2) Include Ext.ux.VirtualKeyboard.js, Ext.ux.plugins.VirtualKeyboard.js and virtualkeyboard.css in jsp which is loading whole application.

Problem 1 : I get error Uncaught TypeError: Object #<Object> has no method 'reg' atExt.reg('virtualkeyboard',Ext.ux.VirtualKeyboard) in

Ext.ux.VirtualKeyboard.js file

3) Make on view as given below:
Ext.define(
'SAP.view.VirtualKeyBoard',
{
extend : 'Ext.form.Panel',
alias : 'widget.virtualkeyboard',
itemId : 'virtualKeyBoard',
initComponent : function() {
Ext.apply(this, {
items : this.buildItems()
});
this.callParent(arguments);
},...................
in this there is one button with listener
click: function(){
plugin.expand();}
on click that button there while debugging i found that
in file "Ext.ux.plugins.VirtualKeyboard.js" expand method "this.activeTarget" is coming undefinedexpand: function(){if(this.activeTarget){this.activeTarget.expandKeyboard(); }