[Xfce-bugs] review granted: [Bug 12269] xfce4-panel covers fullscreen windows with multiple monitors : [Attachment 7058] Removes feature, which removes occupied space by panel bordering other monitors.

bugzilla-daemon at xfce.org bugzilla-daemon at xfce.org
Sun Mar 26 07:56:49 CEST 2017


Lucas St <lucas.steinmann at gmail.com> has granted  review:
Bug 12269: xfce4-panel covers fullscreen windows with multiple monitors
https://bugzilla.xfce.org/show_bug.cgi?id=12269

Attachment 7058: Removes feature, which removes occupied space by panel
bordering other monitors.
https://bugzilla.xfce.org/attachment.cgi?id=7058&action=edit



--- Comment #5 from Lucas St <lucas.steinmann at gmail.com> ---
Created attachment 7058
  --> https://bugzilla.xfce.org/attachment.cgi?id=7058&action=edit
Removes feature, which removes occupied space by panel bordering other
monitors.

Ok.
So it seems like this is an intended behaviour.
This code passage at panel-window.c:2102 specificially
turns of "struts" when a monitor is on the side next to the panel:

**
	  /* check if this monitor prevents us from setting struts */
	  if ((window->struts_edge == STRUTS_EDGE_LEFT && b.x < a.x)
	      || (window->struts_edge == STRUTS_EDGE_RIGHT
		  && b.x + b.width > a.x + a.width))
	    {
	      dest_y = MAX (a.y, b.y);
	      dest_h = MIN (a.y + a.height, b.y + b.height) - dest_y;
	      if (dest_h > 0)
		window->struts_edge = STRUTS_EDGE_NONE;
	    }
	  else if ((window->struts_edge == STRUTS_EDGE_TOP && b.y < a.y)
		   || (window->struts_edge == STRUTS_EDGE_BOTTOM
		       && b.y + b.height > a.y + a.height))
	    {
	      dest_x = MAX (a.x, b.x);
	      dest_w = MIN (a.x + a.width, b.x + b.width) - dest_x;
	      if (dest_w > 0)
		window->struts_edge = STRUTS_EDGE_NONE;
	    }
**

Though I have to say I don't really get why this is done since I can not think
of a situation I want my panel to hide behind a window locked to a site of a
monitor.

I made a patch removing this feature.

Until now I only found one side effect of this:
Moving windows between screens lets them snap about half way through the
border.
But I think it's less annyoing then the panel hiding the top of my window.

I don't recommend using this as a fix for upstream or so.
But if someone has the same problem he can think about applying this.


More information about the Xfce-bugs mailing list