casper@fwi.uva.nl (Casper H.S. Dik) (01/16/90)
Hi, Here is a bug report I send in today. With DecorateTransients set, twm no longer showed transient windows in any iconmanager and iconified them, even when IconifyByUnmapping is set. X Window System Bug Report xbugs@expo.lcs.mit.edu VERSION: R4 CLIENT MACHINE and OPERATING SYSTEM: Sun [34] running SunOS 4.0.3 (not important) DISPLAY TYPE: any WINDOW MANAGER: twm AREA: twm SYNOPSIS: Transient windows aren't handled as other windows when DecorateTransients is set. DESCRIPTION: DecorateTransients is given is, transient windows get placed without asking the user. They do not show op in any iconmanager. When IconifyByUnmapping is set, transient windows still get an icon. A previous version of twm did what I expected. $Header: twm.c,v 1.2 88/10/15 19:12:05 jim Exp $ $Revision: 1.2 $ $Date: 88/10/18 11:36:29 $ REPEAT BY: Examine the code or create a transient window. SAMPLE FIX: *** add_window.c Mon Jan 8 20:24:36 1990 --- add_window.c.org Sat Dec 16 01:41:16 1989 *************** *** 206,212 **** * NON_ZERO if the window is at other than (0,0) */ ask_user = TRUE; ! if ((tmp_win->transient && !Scr->DecorateTransients) || (tmp_win->hints.flags & USPosition) || ((tmp_win->hints.flags & PPosition) && Scr->UsePPosition && (Scr->UsePPosition == PPOS_ON || --- 206,212 ---- * NON_ZERO if the window is at other than (0,0) */ ask_user = TRUE; ! if (tmp_win->transient || (tmp_win->hints.flags & USPosition) || ((tmp_win->hints.flags & PPosition) && Scr->UsePPosition && (Scr->UsePPosition == PPOS_ON || *** iconmgr.c Mon Jan 8 20:30:37 1990 --- iconmgr.c.org Thu Dec 14 22:23:02 1989 *************** *** 461,468 **** tmp_win->list = NULL; ! if (tmp_win->iconmgr || Scr->NoIconManagers || ! (tmp_win->transient && !Scr->DecorateTransients)) return NULL; if (LookInList(Scr->IconMgrNoShow, tmp_win->full_name, &tmp_win->class)) --- 461,467 ---- tmp_win->list = NULL; ! if (tmp_win->iconmgr || tmp_win->transient || Scr->NoIconManagers) return NULL; if (LookInList(Scr->IconMgrNoShow, tmp_win->full_name, &tmp_win->class)) *** menus.c Fri Jan 12 10:35:35 1990 --- menus.c.org Thu Dec 14 23:15:04 1989 *************** *** 2175,2182 **** XWindowAttributes winattrs; unsigned long eventMask; ! iconify = ((!tmp_win->iconify_by_unmapping) || ! (tmp_win->transient && !Scr->DecorateTransients)); if (iconify) { if (tmp_win->icon_w == NULL) --- 2175,2181 ---- XWindowAttributes winattrs; unsigned long eventMask; ! iconify = ((!tmp_win->iconify_by_unmapping) || tmp_win->transient); if (iconify) { if (tmp_win->icon_w == NULL) -- Casper H.S. Dik VCP/HIP: +31205922022 University of Amsterdam | casper@fwi.uva.nl The Netherlands | casper%fwi.uva.nl@hp4nl.nluug.nl