key dispaching handling moved to view