added XJKeyboardControl