If only Tim Cook said that instead of saying "I don't consider the bloody ROI, and if you don't like that, divest". There's a legit approach of going short term, and it may be wrong, and if it is wrong, it can be explained why it is wrong - just as you did. Or it can be shouted down - because how dare those neanderthals ask us questions? I'd rather like to live in a climate where questions get answered, not shouted down.
There comes a point where questions themselves are being used as an abusive form of politics. At that point, a display of anger is totally appropriate.
Tim Cook has a responsibility to protect himself as CEO, the company itself, and the other shareholders, from manipulative questioning by a fringe group. He also has a responsibility to stand for the company's values.