Like it was already said a few times, there is no solution that works on all platforms. So you HAVE to use at least two solutions, or drop support for some platforms.
Its this simple, and I don't understand whats so hard to understand about this or why you don't want this solution.


Shitlord by trade and passion. Graphics programmer at Laminar Research.
I write blog posts at feresignum.com