IMO, it comes from a combination of strength within, at your own time, when you just can't take it anymore. As codependents we even want to control, or at least I did, how long it will take to be able to forgive - detach - or be done. It's just not so, its a process. You can't run from your own head and you can't forgive until you are ready to, if you want to.
Kudos on going to therapy and working on you!!