--- old/src/java.desktop/unix/classes/sun/awt/X11/XWindowPeer.java 2015-12-07 13:56:47.805625889 +0300 +++ new/src/java.desktop/unix/classes/sun/awt/X11/XWindowPeer.java 2015-12-07 13:56:47.689625893 +0300 @@ -1188,6 +1188,24 @@ public void setFullScreenExclusiveModeState(boolean state) { super.setFullScreenExclusiveModeState(state); updateSecurityWarningVisibility(); + if(XWM.isCompiz() && !isOverrideRedirect()) { + try { + XToolkit.awtLock(); + applyWindowType(); + XSetWindowAttributes xwa = new XSetWindowAttributes(); + xwa.set_event_mask(XConstants.PropertyChangeMask); + xwa.set_override_redirect(state); + XlibWrapper.XChangeWindowAttributes(XToolkit.getDisplay(), + getWindow(), XConstants.CWOverrideRedirect, xwa.pData); + if (isVisible()) { + XlibWrapper.XUnmapWindow(XToolkit.getDisplay(), getWindow()); + XlibWrapper.XMapWindow(XToolkit.getDisplay(), getWindow()); + } + xwa.dispose(); + } finally { + XToolkit.awtUnlock(); + } + } } public void updateSecurityWarningVisibility() {