InputHandler has to hold an additional lock