better handling for return values on Activity