I don't quite understand why noone is building thread-safe UI frameworks

Because it's not exactly easy? Smiley

Imagine what happens if 2 threads update properties on different UI elements and imagine that those properties affect the layout. Should both threads execute the layout pass? Use a big fat lock to serialize the layout? That sucks performance wise. Try to make the various data structures that are used during layout thread safe? That's likely to be way too complicated if not impossible.