The code is Fucked, the logic is broken.

So added to the mayhem and catched an issue breaking the keyboard for Moto G, need to investigate this a little more to fix it correctly, well more correctly than now.

Thanks to TrevD