(#47) Fully functional text selection