Most people consider the iPhone as a "phone", not as a "computer". It's even in the name. So it fits your definition for devices which only run code that the vendor had specially packaged.
People obviously consider it a computer; they install and use third party software on it. The question is whether the vendor should be allowed to monopolize the market for the third party software even when both the user and the third party developer don't want them to.
People obviously consider it a computer; they install and use third party software on it. The question is whether the vendor should be allowed to monopolize the market for the third party software even when both the user and the third party developer don't want them to.