Return false and avoid calling OnChangedViewList() if the view wasn't present in the first place. This is not, strictly speaking, backwards compatible, but most of the existing code doesn't seem to check the return value of RemoveView() at all and it's hard to imagine that someone would rely on it returning true when removing a non-existent view, so in practice this changes seems to be safe. Closes #17888.