--- old/src/java.desktop/unix/classes/sun/java2d/xr/XRSurfaceData.java 2015-02-05 15:32:14.959363193 +0530 +++ new/src/java.desktop/unix/classes/sun/java2d/xr/XRSurfaceData.java 2015-02-05 15:32:14.815363187 +0530 @@ -548,8 +548,18 @@ peer.getColorModel().getPixelSize(), Transparency.OPAQUE); if (isXRDrawableValid()) { - initXRender(XRUtils. - getPictureFormatForTransparency(Transparency.OPAQUE)); + // If we have a 32 bit color model for the window it needs + // alpha to support translucency of the window so we need + // to get the ARGB32 XRender picture format else for + // 24 bit colormodel we need RGB24 or OPAQUE pictureformat. + if (peer.getColorModel().getPixelSize() == 32) { + initXRender(XRUtils. + getPictureFormatForTransparency(Transparency.TRANSLUCENT)); + } + else { + initXRender(XRUtils. + getPictureFormatForTransparency(Transparency.OPAQUE)); + } makePipes(); } }