Partially implements toggling between input types.