fix and improve JInputController