text entry: cleanup