Extract base listener processor to use with View.setOn***Listener