xfwm: struts + multi monitor - does that work ?

Enrico Weigelt, metux IT consult lkml at metux.net
Thu Nov 3 14:59:45 CET 2022


On 02.11.22 18:47, killermoehre at gmx.net wrote:

Hi,

> actually, the standard does know about Xinerama [1].
> 
> ----8<————
> The start and end values associated with each strut allow areas to be reserved which do not span the entire width or height of the screen. Struts MUST be specified in root window coordinates, that is, they are not relative to the edges of any view port or Xinerama monitor.
> ————>8———— >
> If KWin is doing this per monitor, than it is actually misreading the spec.

Okay, I must have misread something :o

Bad side: we can't have struts on a monitor's border when there's
another one next to it :(

Maybe we should reconsider the whole idea of struts to a more general
approach of windows (or other geometric objects) that act as "walls".
In that case, panel / status bar applications could just flag their
windows as such "walls", maybe that even could respect shapes. The
classic struts would just cause those walls created internally. Having
that, my "monitor wall" feature (see MR #51) could be implemented much
easier.

I'm actually considering that for quite a while, but haven't found a
simple enough solution yet - guess I'll have to take a deeper look
into linear algebra. If we had a generic function that calculates
a windows "impact" (vector for moving/resizing it to match constraints)
from arbitrary regions (cairo_region_t etc), this could simplify the
whole geometry handling really a lot.


--mtx

-- 
---
Hinweis: unverschlüsselte E-Mails können leicht abgehört und manipuliert
werden ! Für eine vertrauliche Kommunikation senden Sie bitte ihren
GPG/PGP-Schlüssel zu.
---
Enrico Weigelt, metux IT consult
Free software and Linux embedded engineering
info at metux.net -- +49-151-27565287


More information about the Xfce4-dev mailing list