This construction is the so called "Absentive", which is still disputed, but can be found in many European languages. Basically "Wir waren essen" means "We were off eating". The trick is the location referred to - "wir waren essen" always means that you were off from that place.
Let's assume that a friend comes to your place and sees some tools, then asks you what you did. "Ich war meinen Wasserhahn reparieren" would be totally wrong, because you haven't left the place your friend is referring to. "Ich war den Wasserhahn einer Freundin reparieren" would be correct.
It is grammatically correct, native speakers will understand the intricacies of this rather complex construction. But it will be frowned upon in higher level contexts and is still very rare in written German.