This patch fixes the SwingUtilities:
1. updateComponentTreeUI has been rewritten. It now handles menus and AWT
components in a more correct and robust way. Also, it changes the order
in which the components are updated. Before, we went down to the
bottommost components in the tree, updated these
I already have changed lots of Rectangle.union() and
Rectangle.intersection() calls in Swing to use
SwingUtilities.computeUnion() and SwingUtilities.computeIntersection()
instead. The whole point of these utility methods is avoiding the
creation of new Rectangle objects. Really useful, except that