I found a minor issue that the layout rendering doesn't change when first time I switch to it.
I added the following code to fix it but I don't know if it is enough or just a workaround.

```JS
keyboard = Keyboards[name];
keyboardName = name;
```