I found a problem in DefaultDesktopPane. Dragging in fast mode does not
work correctly (at least not on all platforms) if the pane is obscured
by another heavyweight. Graphics.copyArea() isn't guaranteed to work
correctly in this case. I think we need to do like in JViewport and
check if the heavyweight is guaranteed to be not obscured and only do
the fast dragging if this is the case. I pulled the checking code from
JViewport to SwingUtilities so they can share this thing.

I know this is a corner case, because in most cases, when dragging an
internal frame, the user clicks on the frame and brings the window to
the top anyway, so it should not be obscured, but there could be
always-on-top dialogs or similar, which stay on top of the app, even
when the user drags something.

The webrev is here:

http://kennke.org/~roman/desktoppane/webrev/

What do you think? Should this be included in OpenJDK?

/Roman

-- 
Dipl.-Inform. (FH) Roman Kennke, Software Engineer, http://kennke.org
aicas Allerton Interworks Computer Automated Systems GmbH
Haid-und-Neu-Straße 18 * D-76131 Karlsruhe * Germany
http://www.aicas.com   * Tel: +49-721-663 968-48
USt-Id: DE216375633, Handelsregister HRB 109481, AG Karlsruhe
Geschäftsführer: Dr. James J. Hunt

Reply via email to