On Mon, 07 Sep 2020 19:13:25 +0000 ornx <[email protected]> said: It's not required that they do not move. For example - a WM may choose to slide/animate the docks/panels off the edges of the screen when a window goes fullscreen (as an effect) to hid these docks/panels. this would necessitate these windows being moved in this case. There is no requirement they do not move.
Disallowing a user from just doing a regular move of the window "lick and drag for example) is kind of implied by the window type though. > I am implementing EWMH support for a window manager. While reading the spec, I > noticed that it doesn't mention that programs with > _NET_WM_WINDOW_TYPE = _NET_WM_WINDOW_TYPE_DOCK cannot be moved, however, other > window managers and the dock programs themselves assume this. I could not find > any information in the EWMH or ICCC specification that specifies this > behavior, or that this behavior should be used for any other atoms with other > dock-like functionality (e.g., setting struts). I tested this with the dock > program "plank" and the window manager "awesome". > > My questions then are: > * Is this an example of behavior that is part of a "de facto" standard for > interactions between window managers and clients, that EWMH/ICCC are only > subsets of? Or, have I simply misread the spec, and this behavior actually > is specified in it somewhere? > * Is there a better resource for understanding how to correctly implement a > window manager that supports these extensions than simply reading the source > code of other window managers? Thinking about the logical thing to do is important, but specs often leave gaps to allow for varied behaviour - that's incredibly common. Even with the specs, there are apps and WM's that ignore them or abuse them or violate them too so there is a lot of grey area to play in on both sides. Basically you learn by doing and experience... and sometimes might look at what another WM does or read its code as well. > Many thanks, > - Ornxka > _______________________________________________ > [email protected]: X.Org support > Archives: http://lists.freedesktop.org/archives/xorg > Info: https://lists.x.org/mailman/listinfo/xorg > Your subscription address: %(user_address)s > -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- Carsten Haitzler - [email protected] _______________________________________________ [email protected]: X.Org support Archives: http://lists.freedesktop.org/archives/xorg Info: https://lists.x.org/mailman/listinfo/xorg Your subscription address: %(user_address)s
