I know there is a ton of documentation on this but if you don't know
how to ask the right question you will never find the right
answer... I have tried but I just can't seem to find what I'm
looking for.
The question you want to ask has to do with First Responder, so I
would recommend reading up on that. In addition to being a generally
fascinating topic, being knowledgeable in it will pay great dividends
when debugging obscure behavior in the future.
Also of general responder interest (though maybe not to you if you're
using NSTextViews?) is the field editors. It inserts itself into the
responder chain and causes general confusion to new users of the cocoa
text system. I don't think NSTextViews, being full-blown "heavy" text
objects in and of themselves, use a field editor... but again, it's
something worth knowing.
This will send a -resignFirstResponder to the current first responder
(in this case, your text view) causing it to commit its changes. After
that, the value should be what you expect it to be.