I got an email from another developer saying that they were having issues with text input to plugins and I emailed him my solution. I thought I should put it here as well for everyone to share. It is nothing complicated and I am guessing lots of people already do this, I create a new desktop level window with a text editor in it and place this directly over the underlying text box to allow text entry. If the window looses focus for any reason it goes away so it is never in the wrong place.
I've ripped this class out of other .h and .cpp files, but it should be easy enough to fix if it doesn't compile straight away, the core class is all juce type calls so it will just be some sort of header issue.