add keyboard layout detect