Last night, my boyfriend and I got into an argument just before falling asleep in bed. The argument was because i found out during the day yesterday that he had been lying to me about another girl he has been seeing (i don't know if he cheated or not, he says he didn't but he hid the whole story from me and i found out from the lady at the local bakery). The argument escalated fast to the point where he jumped up in the bed and towered over me as though he was going to hit me. I was surprised and scared by this action as i was pinned against the bed, so i lashed out to push him away from me with all of my force. I ended up hitting the side of his head with the palm of my hand. He got angrier, and threw me back down onto my back and threatened to hit me waving his fist 2 cm from my face.
He stopped and I apologised for hitting him explaining that i was scared and reacted to protect myself but he was angry and told me that i'm violent and aggressive.
We both agreed to break up. It's certainly for the best as lying is already unacceptable. But I feel so ashamed of my actions. Am i violent? Do i have a problem? I feel that i wouldn't have done it had i not felt so threatened. He is much stronger than me and he could have seriously hurt me if i hadn't gotten him away from me. But in the end, he didn't hit me, he threatened me and pinned me down but i hit him and ultimately he restrained himself. I don't know what to make of this event. I'd be really grateful for some advice.