# HG changeset patch # User denis # Date 1327416396 -14400 # Node ID 2cc8db870a684a9e8f0d63025c1ed3a4f5f771d0 # Parent 5b3082a412cd7217715995f812d001a012516e32 7078460: JDialog is shown as separate icon on the taskbar Reviewed-by: anthony diff -r 5b3082a412cd -r 2cc8db870a68 jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java --- a/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java Mon Jan 23 17:26:07 2012 +0400 +++ b/jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java Tue Jan 24 18:46:36 2012 +0400 @@ -255,6 +255,21 @@ } } + 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 @@ 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) {