Ok so I've been with my girlfriend more than three years. We've always been long distance and that has always caused problems but we've managed to get through rough patches in the past.
However, earlier this year we went a massive amount of time without seeing eachother in person. Whilst I was away in America she went on a clubbing holiday and didn't exactly cheat on me, but she got a bit too friendly with a guy and was sitting on a beach with him and he had his arms around her. After a while he tried to kiss her but she didn't let him and she left. This bothered me but as she didn't really cheat, I forgave her for it.
When I got back to the UK, we went travelling together for a month. It started badly, with her telling me about doubts she was having because I'm her first ever boyfriend and she isn't sure she wants to be with just one person forever. But we talked about it and over the course of the holiday we got things back on track.
But in October she went off to Uni and things went from bad, to worse. Unknown to me, she developed a crush on someone right from the start. One night she called me out of the blue and told me she thought we should break up and finally admitted to having these feelings for someone else. It turns out that she had been trying to avoid him for a while but that was the first night for a while that they'd been together. They ended up getting quite close and went back to her room together and were holding hands, and she said he was kind of stroking her hand with his thumb. Well, we were going to see eachother the next day so I told her to come down anyway and we'd talk about it. We had a big talk and obviously this ordeal had bothered me a lot more than what she did on holiday because it was more meaningful emotional cheating. But she decided she had been stupid, and decided she would get over him and stay with me.
For a while that seemed to be working and she said her feelings for him were diminishing quite quickly and kept saying how sorry she was. But the really big thing happened recently. On her got last day at Uni this term she got very, very stupidly drunk and ended up kissing someone else. I saw her the next day and she told me that someone had tried to make a move on her but she had turned him down. But the day after that she actually told me the truth, that she had kissed him. She says she was just really drunk and didn't know what she was doing and he made the move and she didn't think to stop it. She tells me that she didn't even enjoy it at the time and afterwards she obviously felt awful - though she could be lying about how much she enjoyed it at the time. Now this is obviously hard enough to accept at the best of times but when I asked how long the kiss lasted she said "I don't know, about a minute?" and she also doesn't remember much detail, e.g. she doesn't know who stopped the kiss. Now it seems to me like a minute is a LONG time to kiss someone else, she must have known full well what she was doing and if it was as bad as she says it is, surely she would stop it sooner?
So my question is, is there anyway back from here? I've been cheated on in the past (which she knows all about, obviously) and I feel very betrayed because she knows I already had trust issues because of that. I've been with her for nearly 4 years, which is a huge amount of time, and it's hard to imagine that this is over. But now I'm really starting to think that I deserve better than this. But then again, another part of me feels like I shouldn't throw all of this away because of a really stupid drunken kiss because I understand how that can happen. Thoughts?