abstract text editing and key events