_NET_WORKAREA and multiple monitors
jannis at xfce.org
Tue Aug 4 19:08:11 CEST 2009
On Tue, 4 Aug 2009 14:30:20 +0200
Jannis Pohlmann <jannis at xfce.org> wrote:
> On Tue, 04 Aug 2009 08:11:42 +0200
> Yves-Alexis Perez <corsac at debian.org> wrote:
> > On lun, 2009-08-03 at 15:58 -0700, Brian J. Tarricone wrote:
> > > >> Basically, the spec says:
> > > >>
> > > >> "Work area SHOULD be used by desktop applications to place
> > > >> desktop icons appropriately"
> > > >>
> > > >> If you include non visible area, you will end up with icons
> > > >> potentially being invisible, which defeats the benefits of
> > > >> having _NET_WORKAREA
> > >
> > > Right, but _NET_WORKAREA is then useless on multihead when you
> > > have monitors with different resolutions if you follow that
> > > interpretation. Well, maybe not "useless" -- it does serve the
> > > purpose of ensuring that you don't place things in non-visible
> > > areas. But it also artificially "hides" some (potentially large)
> > > areas that *are* visible.
> > Might be a good idea to port that to netwm ML (if they have one) or
> > talk with metacity/kwin people about this (or even other wms).
> I'm curious how others handle this, too, like notify-osd, nautilus
> (the desktop part) and others. There has to be *some* kind of
> > Basically there's no way _NET_WORKAREA can be non-rectangular, I
> > guess? So either you lose some visible space, or you have some
> > invisible space.
> I have code lying around that computes the invisible areas in a
> multi-head setup based on Xrandr. To do that it also has to determine
> all visible areas of course. Well, actually, if you only need the
> visible areas, you basically determine which outputs are connected and
> then you end up with as many rectangles as you have monitors. If one
> substracts the struts from that (either determined via
> _NET_WM_STRUT_PARTIAL/_NET_WM_STRUT or via libwnck, and assuming they
> are always at the edges), the result could be #monitors rectangles of
> which we even know how they relate to each other (neighbor-wise).
I feel stupid. Most of this is indeed possible with Gdk itself, like
Nick says. You don't need Xrandr for that ;)
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 197 bytes
Desc: not available
More information about the Xfce4-dev