Re: [dwm] dwm and Sun's XToolkit

From: Anselm R. Garbe <arg_AT_suckless.org>
Date: Wed, 13 Dec 2006 12:12:41 +0100

On Wed, Dec 13, 2006 at 11:15:07AM +0100, Anselm R. Garbe wrote:
> Just to let people know: I found that XWM.java in the source of
> JDK6 in the path:
>
> j2se/src/solaris/classes/sun/awt/X11
>
> Now I'm excited what it does and expects...

I looked into that class. Beside the fact that it's a hideous
mess and that Java developers seem to be more moronic than I
ever expected, I know why those Java apps behave totally broken
with dwm now.

I don't want to paste any code of that XWM.java file here,
because I don't want to break any Sun license claims, but I have
to tell you something and I hope that the responsible Java
developers at Sun will get _fired_.

First, this XWM class implements special handling for following
existing window managers in the X world and besides this, it
even implements workarounds for some bugs in existing WMs (I
can't believe this, but obviously some Sun developers work with
IceWM, which is handled in various special ways in that class).

- Enlightenment (E16 and E17)
- KDE2
- Sawfish
- IceWM
- Metacity
- Openlook
- MotifWM
- CDE

Besides this, the XWM class also 'detects' so called legacy WMs,
which is called 'Other'. Fine so far, because
wmii/evilwm/dwm/larswm etc.pp. fall into this category.

However, in a method called 'Insets getInsets(...)' which has
its roots in the Win32 world and is used to determine the
geometry of the frame decor, a wrong assumption is implemented
which won't work with window managers like dwm.

First of all, XWM works properly in determining if a WM is
present through attempting to select for SubstructureNotify
events on the root window. But in the getInsets() method it
assumes, that if a window manager is present, it wether does
single reparenting or double reparenting, - if the WM does *NO*
reparenting like dwm (to reduce resource consumption of X), it
obviously wether runs into an exception which is catched
internally or simply does not returns 'correctWM' (might be it
returns an Insets of the size of the window in such a case,
which means, the whole window is decorated...

@Sun developers: IT IS UNBELIEVABLE that you care about the WM
at all, because YOU DON'T NEED TO. NO X APPLICATION needs to
_care_ about a WM, simply don't care and you can remove this
XWM class crap... You only need to handle configurenotify's and
care about your(!) client area, nothing else. It is really
unbelievable...

Regards,

-- 
 Anselm R. Garbe >< http://suckless.org/~arg/ >< GPG key: 0D73F361
Received on Wed Dec 13 2006 - 12:12:41 UTC

This archive was generated by hypermail 2.2.0 : Sun Jul 13 2008 - 14:33:46 UTC