Custom View and Custom Input Controller