improve event handling + docu