finished keyinput updates