Sorry this is long and overly detailed.
It's ds' birthday. We were waiting for h to get home early for ds' birthday cake. He got home 45 mins later than planned, because he'd had a difficult journey home (though I think he left work too late). Waiting then for h to come and sing happy birthday etc. Niggles ensued, he got so cross with me that he threw a pocket magnifying glass at my head (heavy, solid metal frame), hard, from a close distance. Kids were watching and of course very upset. I calmed them down, we had cake etc, I put the kids to bed. They seem ok. I'm still shaking now.
2 hours on and he still hasn't apologised to me, blaming me for making him so cross. This isn't the first time he's hurt me, but it has been a very long while. He clearly came home in a bad mood and I obviously did wind him up, but still, acting like that in front of the kids? No apology? I don't know what to do.