dwm is a dynamic window manager for X. It manages windows in tiling
and floating modes. Either mode can be applied dynamically, optimizing
the environment for the application in use and the task performed. It
is the little brother of wmii.
dwm contains a small status bar which displays all available tags, the
mode, the title of the focused window, and the text read from standard
input. The selected tags are highlighted with a different color, the
tags of the focused window are highlighted with a small point.
2.18.2
======
This release fixes a bug with missing pixels in themes with rounded
corners.
Translators
Ignacio Casal Quinteiro (gl), Espen Stefansen (nb)
2.18.1
======
This release fixes a bug breaking some QT apps (thanks to Bradley
Hughes for a good test case and lots of patience) a hang with gtk
trunk (not that we expect many to use stable tarball releases of
metacity and bleeding edge versions of gtk together), and a couple
other odds and ends.
- prevent nasty metacity/gdk interactions causing hangs with gtk
trunk (Elijah) [offshoots of #354213]
- avoid some crashes when dragging windows partially offscreen
(Elijah) [#353513]
- avoid mousenav vs. keynav focus problems with the run application
dialog in mouse/sloppy focus modes (Elijah) [#374752]
- send synthetic configure notify events in response to appropriate
MapRequest events too (Elijah) [#322840]
Translators
Ihar Hrachyshka (be@latin), sonam pelden (dz), Jorge González (es), Ivar
Smolin (et), Iñaki Larrañaga Murgoitio (eu), Ignacio Casal Quinteiro (gl),
Gabor Kelemen (hu), Luca Ferretti (it)
2.18.0
======
Only change in this release was updated translations.
Translations
Jordi Mallach (ca), Ankit Patel (gu), Gabor Kelemen (hu), Luca
Ferretti (it), Takeshi AIHANA (ja), Erdal Ronahi (ku), Gintautas
Miliauskas (lt), Jovan Naumovski (mk), Reinout van Schouwen (nl), wadim
dziedzic (pl), raulpereira (pt_BR), Nickolay V. Shmyrev (ru), Горан
Ракић (sr)
2.17.8
======
Thanks to Jaap A. Haitsma, Linus Torvalds and Kjartan Maraas
for improvements in this release.
- Change icon in the "kill window" dialog because the old
one was removed from GNOME (Jaap)
- refactor the code which handles mouse events on the title
bar (Linus)
- Add MAINTAINERS to EXTRA_DIST (Kjartan)
Translations
Alexander Shopov (bg), Jakub Friedl (cs), Hendrik Richter (de),
Ivar Smolin (et), Ilkka Tuohela (fi), Robert-André Mauchin (fr),
Changwoo Ryu (ko), Marek Stepien (pl), Duarte Loreto (pt),
Maxim Dziumanenko (uk)
2.17.5
======
Thanks to Bruno Boaventura, Mad Alex, and Thomas Thurman for
improvements in this release.
- make window menu arrangement more sensible. (#382962, Bruno)
- unmaximise button keeps pressed appearance when moved off and
back. (#395560, Alex)
- fix a couple of compositor crashes (#387761, Thomas)
- new environment variables checked if the compositor is enabled;
see the new file doc/compositor-control.txt for details. (Thomas)
Translations
Djihed Afifi (ar), Ales Nyakhaychyk (be), Jordi Mallach (ca),
Jakub Friedl (cs), David Lodge (en_GB), Raivis Dejus (lv),
Kjartan Maraas (nb), Mugurel Tudor (ro), Daniel Nylander (sv),
Theppitak Karoonboonyanan (th)
2.17.3
======
Thanks to Christof Krüger, Federico Mena Quintero, Bruno Boaventura,
and Björn Lindqvist for improvements in this release.
- fix longstanding problem about windows flickering in and out of
maximised state when dragging between xineramas (#358715) (Christof)
- grab server when switching workspaces (#381127) (Federico)
- replace changing text on window menu with pairs of radio buttons
and checkboxes (#343108) (Bruno, Björn)
Translations
Kjartan Maraas (nb), Jakub Friedl (cs), Yuval Tanny (he), Ivar Smolin (et),
Duarte Loreto (pt), Francisco Javier F. Serrador (es)
2.17.2
======
Thanks to Priit Laes, Bruno Boaventura, Kjartan Maraas, Justin Mason,
Elijah Newren and Dan Mick for improvements in this release.
- implement handle_move_to_{side|corner}_* to allow the user to flip a
window to the side or corner of the screen. (Justin) [#317884]
- fix strict focus mode by picking up on res_class (Dan) [#361054]
- remove deprecated gtk stuff (Priit, Bruno)
- string fixes (Kjartan) [#363354, #363355]
Translations
Jakub Friedl (cs), Francisco Javier F. Serrador (es), Ilkka Tuohela (fi),
Christophe Merlet (RedFox) (fr), Kjartan Maraas (nb)
2.17.1
======
Thanks to Bruno Boaventura and Carlo Wood for improvements in this
release.
- sync metacity workspace previous with libwnck (Bruno) [#341893]
- fix cases when titlebar is allowed offscreen and shouldn't be, and
vice-versa (Carlo) [#333995]
Translations
Ilkka Tuohela (fi)
2.17.0
======
Thanks to Elijah Newren, Jens Granseuer, Bruno Boaventura, Carlo Wood,
and Thomas Thurman for changes in this release.
- version 2 of theme format: stick, shade and above buttons on titlebar,
variable rounding on corners, variable transparency on window
backgrounds, stock icons in themes, can remove all titlebar buttons
from certain classes of window, and more (Thomas) [#102547 and
dependencies]
- improve "Force Quit" dialog (Bruno) [#121936]
- ignore edge resistance when resizing with keyboard (Elijah) [#346782]
- maintain window size and placement across restarts (Carlo) [#358042]
- prevent crash when closing certain remote apps (Elijah) [#358514]
- longstanding mouse-focus bug fixed which affected firefox's
autocompletion (Elijah) [#357695]
- ignore maximum size constraints when maximising (Elijah) [#327543]
- warn translators to keep translations in sync with libwnck (Bruno)
[#355620]
- fixes for compilation warnings, etc (Elijah, Jens) [#348067, #356631]
Translators
Ivar Smolin (et), Gabor Kelemen (hu), Luca Ferretti (it),
Runa Bhattacharjee (bn_IN)
notes:
-yes, there is beryl... it is too complex for the pre-freeze rush
-Mesa-6.5.2 is needed (not at build time, but to run). See pkgsrc-wip.
-the "Composite" extension needs to be anabled in the X server
-at least for intel, Option "XAANoOffscreenPixmaps" is needed, otherwise
some UIs look crippled
go away -- I have real doubts that a version 1.1 jdk and the accompanying
swing are any use to anyone, but am not sure the newer stuff we have
supports all ports which are supported by lang/jdk.
Patch provided by maintainer, Rhialto in PR 35637.
Changes from version 3.7 to 3.8
-------------------------------
1 - Global cleanup
There were some variables shadowing others, things not being
safely initialized, that sort of thing.
[Richard Levitte]
2 - Fixed several memory leaks found by
"Nadav Har'El" <nyh@math.technion.ac.il>.
[Olaf "Rhialto" Seibert]
3 - Merged in the f.movetitlebar command. By default this is bound to
alt-left-click in the titlebar.
[Olaf "Rhialto" Seibert]
4 - Fixed the following issues:
Poking at the code, it looks like InitVirtualScreens() is called
before the configuration file is parsed which would explain what
I see since there's no attempt to create them after the config
file read.
Moving the call after the config parsing causes things to work.
I've run into a few other issues that I fixed with the attached
patch:
- shadow menus on the right screen open the shadow on
the left screen
- shadow menus on the left screen open on top of the
window
- windows on the right screen disappear after startup
[Todd Kover]
5 - Adjustments to ctwm.man:
I noticed a couple of small errors.
One is that the window list arguments for the opaque
keywords are now optional, are listed with square brackets
in the man page. The other is that the two Threshold
keywords are shown in the man page as requiring curly-
brackets, but they are not required or accepted in
configuration files.
[Ross Combs]
6 - improve algoritm to deal with mismatched geometry of virtual
screens
- allow windows to be dragged from one virtual screen to another and
have them switch workspaces appropriately
- handle restarts properly with virtual screens, including preserving
where windows were placed within workspaces regardless of which
virtual screen a window was on; preserve across restarts
[Todd Kover]
7 - WMapCreateCurrentBackGround() and WMapCreateDefaultBackGround()
would skip remaining virtual screens if not all parameters are present.
- small type errors. [Olaf "Rhialto" Seibert].
8 - There were some directives in the config file that wanted to set some
setting for all virtual screens. However since that list is (now) only
set up after parsing the config file, they failed to work. Moreover,
these settings were basically meant to be global to all virtual
screens, so a better place for them is somewhere in *Scr. They all
related to the Workspace Manager, so I moved them from struct
WorkSpaceWindow to struct WorkSpaceMgr.
The affected directives are StartInMapState, WMgrVertButtonIndent,
WMgrHorizButtonIndent, MapWindowCurrentWorkSpace,
MapWindowDefaultWorkSpace. The window and icon_name, even though not
user-settable, were also moved.
This is basically change #7 above done right.
[Olaf "Rhialto" Seibert]
9 - Re-introduced TwmWindow.oldvs, used to avoid calling
XReparentWindow() when possibe (it messed up the stacking order
of windows). However, maybe the use of .vs should be rethought a
bit: in Vanish() it is now set to NULL with the old value kept
in .oldvs. However the window is still a child of the same vs.
Maybe it is better not to set it to NULL and then, when *really*
changing the virtual screen, .vs can be used instead of .oldvs.
This whole "virtual screen" thing is unexplained in the manual,
which even uses it as a synonym for "workspace" already in the
introduction paragraph. (There also does not seem to be a way
now to test virtual screens in captive windows) I suspect that
all this causes lots of confusion, and when cleared up, can
simplify the code a lot.
I also fixed up the horrible indentation in the functions
where I changed something.
[Olaf "Rhialto" Seibert]
10 - Fixed interaction between "inner" and "outer" workspace
selection with "captive" windows. This was because the Gnome
"_WIN_WORKSPACE" property is used in 2 conflicting ways: for
client windows it indicates which workspace they are in, for
root windows it indicates which workspace they show. Captive
windows are both. Also, the initially selected inner workspace
is now the first, not the same as the outer workspace (this had
a different cause).
[Olaf "Rhialto" Seibert]
11 - Introduce Scr->XineramaRoot to store the root window that
encompasses all virtual screen rootwindows. This further reduces
any need to use RealRoot and/or CaptiveRoot.
Add a schematic drawing that clarifies the relation between the
various root-type windows.
[Olaf "Rhialto" Seibert]
12 - Get rid of all non-locale code and make I18N the silent default
(doesn't have to be mentioned any more).
THIS WILL BREAK CTWM ON OLDER (PRE-LOCALE) ENVIRONMENTS.
I strongly recommend an upgrade to "post-locale" standards.
[Richard Levitte]
13 - Enhance RandomPlacement with a displacement argument, so the
pseudo-radomness can be of displacements other than +30+30.
Here's an example for a pretty funky displacement:
RandomPlacement "on" "-30-100"
[Richard Levitte]
14 - Extend the Info window with the geometry seen from the lower
right corner as well.
[Richard Levitte]
15 - Extend the pointer button specification for title buttons
to take modifiers.
As part of this change, the following title pointer button
specification is deprecated:
Button {j} : {function}
in favor of the following, for consistency:
Button {j} = {function}
The old way still works, but is considered bad form and will
be removed in ctwm 4.0.
[Richard Levitte]
16 - Fix position of buttons in Occupy window, to make them centered.
(and spread the remaining space evenly in 4).
[Olaf "Rhialto" Seibert]
17 - "TwmWindow.group" was once apparently set to 0 when a window had
no group leader but this was changed to pointing to its own
window. This resulted however in many places checking for both
conditions, and several checking only for 0 which could not
occur anymore. Changed it back to 0 (so we can now distinguish
again windows that really indicate themselves as group leader,
if we wish) and this gave rise to some simplifications.
Also, there were various loops through all TwmWindows looking
for a group leader (or a transientfor), I replaced them with
GetTwmWindow() which uses the Xlib function XFindContext() which
uses a hash table lookup. This should be more efficient.
When you change the occupation of a group member window, it is
now applied to the group leader (which in turn affects all
members).
I tried this with ExMH, the only program that uses a real group
leader that I could find. Iconifying the leader unmaps the
members. What should "squeezing" do? ExMH also has an icon
window (see ICCCM 4.1.9, 3rd option) which behaves weirdly; this
may be a bug in ExMH (see exmh-2.7.2/exmh.BUGS) even though fvwm
somehow handles it better.
[Olaf "Rhialto" Seibert]
18 - When Squeezing a window group leader, unmap the member windows,
just like happens with iconification.
[Olaf "Rhialto" Seibert]
19 - Simplifications c.q. de-duplications of code regarding the
WorkSpaceManager and Occupation windows. This includes coding
the layout of these windows only once instead of twice (at
initialisation and when resizing). If it's wrong now at least it
should be consistent.
When changing occupation via functions like
f.movetonextworkspace, also move complete window groups (just
like when you do it via the Occupation window).
Also fixed changing the occupation of the Occupation window.
Documented (so far) undocumented possibility to edit the labels
of workspaces on the fly (what use this is, I'm not sure).
Removed some unused variables.
[Olaf "Rhialto" Seibert]
20 - Get rid of the USE_SESSION and X11R6 macros and make them the
silent default. Also cleaned out a few references to the macro
X11R4, which hasn't been used for ages.
THIS WILL BREAK CTWM ON OLDER (PRE-X11R6) ENVIRONMENTS.
I strongly recommend an upgrade to a newer X11 release.
[Richard Levitte]
21 - Modified the random placement so a negative X displacement has
the first "random" window start near the right edge instead of
the right and a negative Y displacement has the first "random"
window start near the bottom edge instead of the top.
[Richard Levitte]
A new bug fix release of Xfce 4.2 is available. This release is supposed to
be the last release for the 4.2 branch. It includes several fixes ported from
the current developpment branch. This release should not be confused with the
upcoming Xfce 4.4 release [1], it's a bug fix release of the previous stable
branch.
[1] Xfce 4.4.0 is already in pkgsrc-wip.
* New features:
- The command Scroll can now be used for interactive scrolling.
- New Style options: StippledIconTitle, !StickyStippledTitle,
and !StickyStippledIconTitle.
- Full support for menu context (M) key and mouse bindings. See
the section Menu Bindings in the man page for details.
- Hilighted menu backgrounds now use pixmaps gradients and
transparency from their related colorset.
- New window conditions: StickyIcon, StickyAcrossPagesIcon and
StickyAcrossDesksIcon.
* Changed features:
- "Mouse n M N" is no longer used to disable or remap the
builtin tear off menu button. See the section Tear Off Menus
for details on replacement commands.
* Bug Fixes
Apply a patch by Dan Bilik to remove optimisation flags that cause compiler to
fail
Changelog contains many bugfixes and improvements:
- New resource/command: session.modKey, command SetModKey
- More ewmh support: _NET_WM_WINDOW_TYPE_DIALOG and _NET_FRAME_EXTENTS
- External tabs are back
- Added support for net wm atoms
- Added new commands: ToggleCmd, CloseAllWindows
- Supports urgency hint ( flashing titlebar/iconbar )
- Pressing shift while pressing enter in menu item will fake a right mouse
button press.
- Better UTF-8 handling
- Added option to reverse desktop wheeling: session.screen0.reversewheeling
- Vertical toolbar is back
INSTALLATION_DIRS, as well as all occurrences of ${PREFIX}/man with
${PREFIX}/${PKGMANDIR}.
Fixes PR 35265, although I did not use the patch provided therein.
* Changes since 1.4.0
** set padding affects bar location
On OSX the bar and top of each window is hidden by the menu bar. set
padding corrects the window problem but not the bar problem. So this
change fixes that.
** new set variable framefmt
See docs for info.
** new commands swap, exchangeleft, exchangeright, exchangeup, exchangedown
See docs for info
** new commands execa and execf
See docs for info.
** default font change
It is now "-*-fixed-bold-r-normal-*-15-*-*-*-c-*-*-*" which hopefully
fixes some i18n issues.
** new command set topkmap
See info manual.
** build date in ratpoison -v
** new command sfrestore
restores frame configurations for multiple screens.
** support for i18n fonts
* Fixes to the code to compile cleanly with the newest versions
of fltk1 and fltk2.0.
* Fltk1 version did not draw ampersands in the popup menu, and
Alt+Tab did not dismiss the menu when you released the Alt key.
# JWM v1.8rc2 <> 20061008
* Fixed a seg fault when tray buttons point to invalid root menus.
* Hide popups when the mouse moves over them.
* Fix alt+left click window moving so windows don't jump.
* Allow windows to be lowered with alt+right click.
* When maximizing, place the window on the screen of its center point.
* Unmaximize maximized windows that resize themselves.
* Add support for _NET_WM_STATE_FULLSCREEN.
* More warning messages about incorrectly configured root menus.
# JWM v1.8rc3 <> 20061022
* Fixed a bug that caused strange things to happen after a client was killed.
* Fixed a bug that caused windows to be mapped incorrectly when started at the same time as JWM.
* Fixed an issue with auto-hide trays hidding when they shouldn't.
# JWM v1.8rc4 <> 20061104
* Fixed some seg faults with invalid configuration files.
* Trim leading and trailing spaces from configuration options.
* Improved _NET_WM_STATE_FULLSCREEN support.
* Fixed StartupCommands and Swallow items.
# JWM v1.8 <> 20061223
* Fixed a bug when moving windows that could cause the window to jump to the upper left corner of the screen.
* Fixed a Dock issue when restarting.
* Fixed a Swallow issue on startup.
* Transient windows of active windows now get focus when they are first created.
* Submenus now appear on the left if there isn't enough room on the right (mdsama)
Based on patch provided by Brian de Alwis in PR 35355,
add missing manpage entry.
03 Jan 2005 Tomas Styblo <tripie@cpan.org>
* 1.07 released
03 Jan 2005 Christopher Chan-Nui <channui@tiny.org>
* fixed a formatting bug that made the window list
unintelligible for desktop_ids == -1 or desktop_ids > 9
03 Jan 2005 Tomas Styblo <tripie@cpan.org>
* 1.06 released
03 Jan 2005 Christian V. J. Brüssow <cvjb@cvjb.de>
* added support for WM_CLASS
03 Jan 2005 Jack Erwin <jerwin@jabber.com>
* added the ability to address the currently active window (:ACTIVE:)
03 Jan 2005 Mads Martin Joergensen <mmj@suse.de>
* added support for 64-bit environments
03 Jan 2005 Shyamal Prasad <shyamalprasad@verizon.net>
* provided a wmctrl(1) manpage
or USE_X11BASE set, but don't include mk/x11.buildlink3.mk directly or
via buildlink3.mks
- introduce BUILDLINK_PREFIX.libXpm as alias for BUILDLINK_PREFIX.xpm
in the !modular case
- fix some cases where the check for libX11 couldn't work at all by using
C++ for compilation without including the proper headers
Verified using a full X11_TYPE=xorg bulk build without additional
breakage. Discussed with salo@, wiz@ and send to packages@ for feedback.
packages with the modular Xorg equivalent. Those are falling back
to the old location by default, so this commmit doesn't change
dependencies.
graphics/xpm ==> x11/libXpm
fonts/Xft2 ==> x11/libXft
x11/Xfixes ==> x11/libXfixes
x11/xcursor ==> x11/libXcursor
x11/Xrender ==> x11/libXrender
x11/Xrandr ==> libXrandr
Upgrading from earlier 2.5.x versions is strongly recommended.
This release is available at the home page: http://www.fvwm.org/.
* Bug Fixes:
- FvwmCommand now reports "end windowlist" and "end configinfo".
- FvwmCommand now prints config info split on lines.
- FvwmTaskBar no longer gets lost with trailing whitespace after
geometry specification.
- Fixed a window size problem if the aspect ratio is set (e.g.
mplayer).
- Decorations now update when unmanaged windows take focus, and
not FlickeringQtDialogsWorkaround is enabled.
- FvwmPager again allows movement of windows added before a
page change.
- fvwm no longer crashes on 1 and 4 bit displays. (#1677)
- EWMH desktops now correctly handles FPClickToFocus. (#1492)
- Security fix in fvwm-menu-directory. (CVE-2006-5969)
fvwm-2.4.20 maintenance release for all earlier 2.4.x versions.
It contains a number of minor fixes and one important security fix.
This release is available at the home page: http://www.fvwm.org/.
Who needs to upgrade?
---------------------
Because of the security issues with fvwm-2.3.4 to fvwm-2.4.19, it
is strongly recommended to upgrade to fvwm-2.4.19.
System administrators are encouraged to install this version to
grant their users access to the latest stable version.
Bug Fixes:
----------
* The configure script now correctly appends executable file
extensions to conditionally built binaries. Fixes building on
Cygwin.
* FvwmConsole no longer conflicts with getline of Cygwin's stdio.
* Fixed parsing of For loops in FvwmScript.
* Fixed a possible endless loop when de-iconifying a transient
window.
* Reject some invalid GNOME hints.
* Fixed a loop when xterm changes its "active icon" size.
* The configure script can now cope with four-part version numbers
when detecting some libraries.
* Security fixes in
fvwm-menu-directory. (CVE-2006-5969)
FvwmCommand
Patch provided by Martin Wilke via PR 34526.
- Changelog
Add support for decoration less application windows
Fix typo in non XRDB cmd line parser.
an alternate key shortcut config file.
Fix compiler warning when not building with alt input wins.
Fixes for better handling shifted key shortcuts.
Set the active app root prop *after* setting new list
props as to avoid sync issues in apps using this info.
Dont start pinging an app if requests to be activated
but is already activated, ( maemo #32483 )
Be more careful removing alt ( maemo ) input methods
when transient to removed dialog / application.
Call XSync() so ping is sent immediatly to be double safe.
correctly honur PING_INTERVAL, not PING_INTERVAL+1
Fix for iconizing toolbar windows and there position.
Fixes MB bug #95
Add repaint to removal also.
Force a dialog repaint on IM dialog resize for safety.
Fix typo snafu with previous commit.
Just change affected dialog height back to original
size. Dont try and do anything clever with positioning.
Make aggresive pinging a little less aggressive;
- No pinging on fullscreen toggles.
- Only ping on NET_ACTIVE message.
Only remember size of affected dialogs for reseting, not position.
Honour client_flags in initial loop. should fix maemo #25281
Send state message before configure when toggleing
fullscreen.
Fix dialog gravity in presence of panels
Dont attempt to paint 0 width decorations.
Correct some debug info.
Focus tracking fix moving between dialogs and trans for
root dialog. fixs maemo #26095
Add basic support for window gravity on dialogs.
Make sure window names changes can end up NULL.
blocker window in place ( When in super modal mode ).
Focus fixes for case of multiple trans for root dialogs.
1.0
Attempted fix for grouped dialog stacking.
Implement alternate optional more aggesive pinging policy needed
for maemo.
Add support for optional alternate custom themeing for border only
( no title bar ) dialogs.
avoid freeing non existant font color on theme switch.
Add support for cache attribute in <theme> tags.
MB_THEME_ALWAYS_CACHE env var overides.
setting MB_NO_THEME_CACHE env var turns off internal pixbuf
cacheing ( very experimental )
dd support for _MB_APP_WINDOW_LIST_STACKING root win prop
Add basic support for window grouping.
Fix 'flash' when non top apps map dialogs.
Fix issues with minimised dialogs not remapping.
Stacking fixes for multiple groups of transient for transient dialogs.
XRestackWindows didn't include count of blocker wins in total
window count.
Fix preivous blocker win borkage
Dont map the blocker wins on reparenting, wait for show()
Add extra debug info for blocker wins
Fix potential XGetWMHints leak
Small fix for east panels to get correctly positioned after
theme switch.
Fix GCC 4 warnings.
Fix issues with modal blocker wins breaking stack count.
Move previous fix to safer place in code.
Make sure ewmh lists get updated when closing a window.
Fix re-enabling of help/accept/custom buttons
Add support for help/accept/custom buttons being toggled on the fly
Add a little more debug.
Fix for making sure alt input windows get resized correctly when
transient for a transient for root window and switching from/to
a fullscreen to a non fullscreen app win.
Dont try and manage new clients if no memory available.
unmap before reparent to root in effort to avoid potential
flash.
Add new -use_super_modal switch to enable previously default
maemo 'aggresive' modal handling - blocking wins etc
Reparent hidden toolbar wins to current position rather than 0,0
reparent 'removed' win to current pos on root rather than 0,0
Really clear NET_WM_STATE if no states set.
Send PING even when close button is 'blocked' by modal dialog
print debug warning if client sets tranciency to itself
Add some more X error traps very early on in new client creation.
Include iconized clients in select menu sizing.
Avoid potential recursive for self tranciency changes.
Fix compiler warning.
If set, use env 'MB_HUNG_APP_HANDLER' pointing at executable
to handle hung applications rather than default killer.
Make sure de iconizing a client de-iconizes transients too.
Less aggresive root window property updating.
Clean up ping code a little. Adding new define for frequency
of hung app check.
Simplify switching code a little.
Remove old attempted transient infinite loop fix ( 2005-06-02 )
Handle windows hiding but not always unmapping there windows.
Fixes 'ghost' windows when quicking hiding/showing a GTK win.
Dont let windows change transiency to themselves.
avoid potential infinite loop from transiant race?