diff --git a/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java b/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java index 9d7daf0889e..9ce07cdbb34 100644 --- a/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java +++ b/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java @@ -255,6 +255,21 @@ class XWindowPeer extends XPanelPeer implements WindowPeer, } } + if (owner != null || isSimpleWindow()) { + XNETProtocol protocol = XWM.getWM().getNETProtocol(); + if (protocol != null && protocol.active()) { + XToolkit.awtLock(); + try { + XAtomList net_wm_state = getNETWMState(); + net_wm_state.add(protocol.XA_NET_WM_STATE_SKIP_TASKBAR); + setNETWMState(net_wm_state); + } finally { + XToolkit.awtUnlock(); + } + + } + } + // Init warning window(for applets) if (((Window)target).getWarningString() != null) { // accessSystemTray permission allows to display TrayIcon, TrayIcon tooltip @@ -480,14 +495,6 @@ class XWindowPeer extends XPanelPeer implements WindowPeer, bounds.x, bounds.y, bounds.width, bounds.height); XWM.setMotifDecor(this, false, 0, 0); - XNETProtocol protocol = XWM.getWM().getNETProtocol(); - if (protocol != null && protocol.active()) { - XAtomList net_wm_state = getNETWMState(); - net_wm_state.add(protocol.XA_NET_WM_STATE_SKIP_TASKBAR); - setNETWMState(net_wm_state); - } - - boolean isResized = !bounds.getSize().equals(oldBounds.getSize()); boolean isMoved = !bounds.getLocation().equals(oldBounds.getLocation()); if (isMoved || isResized) {