codehenry / xmonad

Automatically exported from code.google.com/p/xmonad
0 stars 0 forks source link

struts not recalculated when a dock window moves instead of being unmapped/remapped; also, ewmhDesktopsEventHook doesn't relay events to docksEventHook #525

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
  1. Drag a gnome-panel to a new location instead of using its Preferences dialog to reposition it.

What is the expected output? What do you see instead?
  The layout is not recalculated to account for the relocated panel.

There should be a handleEventHook for ManageDocks which checks for a change in 
the strut property (_NET_WM_STRUT or _NET_WM_STRUT_PARTIAL as appropriate) and 
forces the layout to be recalculated.  Presently there is a little-known and 
mostly unused docksEventHook which only supports the case where a new dock is 
unexpectedly mapped; most of the time this is handled automatically because 
docks use EWMH properties instead of declaring themselves to be 
override_redirect.  (Although this might also explain some cases where a dock 
does not behave properly until something does force a layout refresh.)

Related to this, EwmhDesktops might want to invoke docksEventHook; while the 
normal case might currently be that it's not needed since one would expect an 
EWMH dock to use EWMH facilities instead of override_redirect, this will 
necessarily change if we add support for dynamically changing struts.

Original issue reported on code.google.com by allber...@gmail.com on 24 Jan 2013 at 2:05

GoogleCodeExporter commented 8 years ago

Original comment by allber...@gmail.com on 24 Jan 2013 at 2:09

GoogleCodeExporter commented 8 years ago
One user on #xmonad who has been seeing docks not get accounted for until 
something refreshes reports that docksEventHook does not help.

In other news, I'm trying to work out if there's still a race condition or etc. 
somewhere that could result in our not noticing a dock.

Original comment by allber...@gmail.com on 24 Jan 2013 at 3:11

GoogleCodeExporter commented 8 years ago
False alarm on that last comment; they have found a legitimate bug in 
avoidStruts, see https://code.google.com/p/xmonad/issues/detail?id=526

Original comment by allber...@gmail.com on 24 Jan 2013 at 3:43