partially working keylistener added