Re: [As-users] 2.2.1, compiling, debugging, placement
Sasha Vasko (sasha@aftercode.net)
Tue, 28 Mar 2006 17:34:26 -0600
Juergen Leising wrote:
> Hi,
> 1. configure and autoconf/configure.in:
> 2. src/tools/ASWallpaper/interface.c: around line 443:
> 3. src/afterstep/afterstep.c:
> 5. libAfterBase/output.h:
All of the above implemented in CVS now. Thanks alot!
> 6. And now one of the major problems:
>
> The whole placement system of afterstep-2.x.x is completely
> messed up. The basic requirement of a window manager
> is that it manages windows without provoking major
Nope, the basic requirements is that it has to comply to ICCCM standard :)
> headaches. I did dig into that a bit, but after all
> I didn't get it, at least not that quickly. For example
> look at
> libAfterStep/hints.h
> /* AS Startup flags : */
> #define AS_StartPosition (1<<0)
> #define AS_StartPositionUser (1<<1)
> #define AS_Position (1<<1)
Under ICCCM there could be two types of position requested by the
client: user and program. Now User position is considered to be
mandatory, while PPosition is optional and WM is free to ignore it.
>
> Two different flags share the same value. Small wonder, that
> xeyes
> on let's say the fourth viewport starts correctly inside the current
> viewport, whereas
> xeyes -geometry +100+100
> does not: It pops up coercively on the 1st viewport.
> Why? Because the second window will take a different
User position is treated as ABSOLUTE POSITION ON VIRTUAL SCREEN RELATED
TO THE ORIGIN OF THE DESKTOP,
while PPosition is treated as relative to current viewport. Rationale:
if USPosition was treated relative to current viewport, there would be
no way to position windows on viewports other then current, from say a
startup script. This really is unspecified in ICCCM but it should be,
and I attempted to clarify it in Extended WM specs, but noone was
interested. See:
http://mail.gnome.org/archives/wm-spec-list/2005-October/thread.html
AfterStep has an option of selectively overriding this behavior via:
UseCurrentViewport option in database.
Also NoPPosition is usefull too, if it is required to alter treatment of
PPosition
> Separating AS_StartPosition and AS_StartPositionUser from
> AS_Position, btw, did stop that coercive movement to the very
> first viewport. But this confused the winlist, the pager
> the wharf and the monitoring wharf.
Bad idea.
> 7. Makefiles:
>
> Please switch to autoconf and automake eventually. They produce
> better Makefiles than the current ones. The latter simply ignore
Well, I really have no idea nor desire to learn as to how to convert
current complicated system of Makefiles with lots of special targets to
use automake, so I personally ain't gonna do that. Would not mind if
someone else did that though, as long as nothing gets broken in the
process (highly unlikely).
> Bye, Juergen
Thanks again
Sasha
_______________________________________________
As-users mailing list
As-users@afterstep.org
http://mail.afterstep.org/mailman/listinfo/as-users