Re: ICCCM breakage, IconicState, and desktops

On Sat, Dec 01, 2001 at 12:33:15PM -0600, Sasha Vasko wrote:
> On Saturday 01 December 2001, Oliver Chapius wrote:
> > On Tue, Jun 12, 2001 at 10:47:54PM -0400, Havoc Pennington wrote:
> > > > John Harper <jsh eazel com> writes:
> > > > > > I did actually try this way of implementng multiple desktops in > 
> sawfish
> > > > (to try to be ICCCM compliant). The main problem was that pagers and
> > > > tasklist applets would display all off-desktop windows as iconified!
> > > > (e.g. not display them at all)
> > > > > > So, in the end I decided to just unmap both frame and client windows
> > > > for these windows..
> > > > > > That's easily solved by _NET_WM_STATE_MINIMIZED though, right?
> > >
> Hmm, I dont remember seeing that message and I could not find it in archives.
> So I can't really see what it is referring to - implementation with virtual 
> roots ? or without ? I take it that talks about no-virtual-root 
> implementation, and bioth frame and window were unmapped when desktop becomes 
> inactive. In which case you should se window as iconic. That effect is 
> exactly why no-virtual-root-per-desktop implementation should not be used.
> Still I don't quite understand what is the question.

This is the point I am not agree with you. There is some wm which
use  "no-virtual-root-per-desktop" implementation for virtual
desktop for good reasons.

> > 
> > Yes,
> > This allows a window manager that does not use multiple virtual
> > roots for virtual desktops to be both ICCCM and wm-spec compliant.
> > I do not understand Sasha arguments against this _net_wm_state.
> > Sasha, it seems that your argument is: as my wm use "virtual roots"
> > for desktops we do not need this hint.
> > The fact is that
> > (i) IconicState does not mean iconic for the wm (ICCCM)
> How is that ? IconicState is set by window manager, and application should 
> track changes in WM_STATE property to know what window it should animate.
> It's perfectly good and standard way used for ages to distionguish between 
> two major window states used for ages, and there is no reason whatsoever to 
> override it with another _NET_WM_STATE property. If somebody does indeed
> go the way of virtual desktops without virtual roots, then the only choice 
> they have is to be slightly ICCCM uncompliant and unmap only frame window,
> but not the client. Yes its illigal according to ICCCM. But in practice you 
> should not see any major problem with that, and its definately a better 
> solution then adding proposed property to _NET_WM_STATE. One ought to use 
> virtual roots when implementing virtual desktops. 

So, you are agree that some window manager are forced to break the ICCCM.
Yes, this may cause no major problem but we my lose a "feature" here.
Also, IMHO a spec should not go into things like "this is not consistent
but this works".

> The only reason _NET_WM_STATE is there is only to compliment the 3 ICCCM 
> state, and allow for things like maximized and shaded, which is not covered 
> by ICCCM. But those states merely go as finer grain of NormalState. Non of it 
> overrides WM_STATE. And that is good, and that is how it should stay IMO. 
> Remeber - we don't override ICCCM - we complimnent it.

_NET_WM_MINIMIZED does not override the ICCCM. As the meaning of IconicState
is not so clear, _NET_WM_MINIMIZED (maybe _NET_WM_ICONIFIED is a better name)
"compliment" the ICCCM spec by saying when a window is really iconified
for the window manager. So this _NET state is as the other one: it gives
a "finer grain" of IconicState.

> > (ii) the only way a pager/taskbar can know if a window is iconified
> > is to use the window State.
> Yep. tracking WM_STATE property is a good way to go.

No for me, as IconicState does not neceserlly means iconic for the
> > So, IMHO the wm-spec intentionally break the ICCCM.
> > I currently implement the wm-spec inside fvwm (I've already
> > implemented it in an external way) and some developers do
> > not understand this (of course this is not an argument).
> do not understand what ?

They do not understand why the wm-spec intentionally break the ICCCM.

Regards, Olivier

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]