# HG changeset patch # User azvegint # Date 1416318608 -14400 # Node ID e51840480603a38d3d66e8b243249217105e8f05 # Parent fc0947a598672bad0752e9b1b37b6e6b2a8cb24c 8058197: AWT fails on generic non-reparenting window managers Reviewed-by: azvegint, serb Contributed-by: Rohit Agrawal diff -r fc0947a59867 -r e51840480603 src/solaris/classes/sun/awt/X11/XWM.java --- a/src/solaris/classes/sun/awt/X11/XWM.java Sun Nov 09 22:17:45 2014 +0300 +++ b/src/solaris/classes/sun/awt/X11/XWM.java Tue Nov 18 17:50:08 2014 +0400 @@ -595,8 +595,13 @@ return isNetWMName("Mutter") || isNetWMName("GNOME Shell"); } + static int awtWMNonReparenting = -1; static boolean isNonReparentingWM() { - return (XWM.getWMID() == XWM.COMPIZ_WM || XWM.getWMID() == XWM.LG3D_WM || XWM.getWMID() == XWM.CWM_WM); + if (awtWMNonReparenting == -1) { + awtWMNonReparenting = (XToolkit.getEnv("_JAVA_AWT_WM_NONREPARENTING") != null) ? 1 : 0; + } + return (awtWMNonReparenting == 1 || XWM.getWMID() == XWM.COMPIZ_WM + || XWM.getWMID() == XWM.LG3D_WM || XWM.getWMID() == XWM.CWM_WM); } /*