[Bug 1425690] Re: New windows are created offscreen

Alistair Buxton a.j.buxton at gmail.com
Wed Feb 25 22:11:56 UTC 2015


The problem is caused by Ubiquity sets up the _WM_STRUT and
_WM_STRUT_PARTIAL.

It does :

set_strut(GTK_WINDOW(win), width, 0, allocation.height,
allocation.height, 0, width);

and these values are put in LEFT, LEFT_START_Y, LEFT_END_Y, TOP,
TOP_START_X, START_END_X respectively. It also puts LEFT and TOP in
_WM_STRUTS. So they end up like this:

_NET_WM_STRUT_PARTIAL(CARDINAL) = 1024, 0, 28, 0, 0, 28, 0, 0, 0, 1024, 0, 0
_NET_WM_STRUT(CARDINAL) = 1024, 0, 28, 0

This kind of makes sense for the partial struts because the top strut
and the left strut cover the exact same screen area. However, if the WM
only looks at _WM_STRUT then it sees the left strut as covering the
entire screen.

It looks like xfwm4 does not understand partial struts at all, so it
sets up the _NET_WORKAREA as having no space at all. Further, it looks
like recent changes in xfwm4 window positioning code mean that it only
recently started honouring _NET_WORKAREA at all. So now windows get
pushed entirely off the screen, because the WM believes there's no space
on it.


http://bazaar.launchpad.net/~ubuntu-
installer/ubiquity/trunk/view/head:/src/panel/panel.c#L249

http://bazaar.launchpad.net/~ubuntu-
installer/ubiquity/trunk/view/head:/src/panel/panel.c#L56

http://git.xfce.org/xfce/xfwm4/tree/src/workspaces.c#n519

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to ubiquity in Ubuntu.
https://bugs.launchpad.net/bugs/1425690

Title:
  New windows are created offscreen

Status in ubiquity package in Ubuntu:
  Confirmed

Bug description:
  When running ubiquity-dm from Xubuntu's Beta1 Vivid image, any new
  windows created within it are positioned offscreen. This means that
  the final window informing you that your installation is finished
  doesn't show up for the user.

  As far as I have been able to debug this, some window-manager hints are set incorrectly by Xfwm4, it's not clear though as to why as all information I could gather from xrandr and xprop otherwise seemed fine. To be more concrete, this is the offending hint:
  _NET_WORKAREA(CARDINAL) = 1024, 28, 0, 740

  It should read like this instead:
  _NET_WORKAREA(CARDINAL) = 0, 28, 1024, 740

  I'm not sure what causes this offset, the ubiquity-panel seems to set
  its STRUTS ok and Xfwm4 seems to behave fine in the live session. I'll
  attach a few logs below.

  "xprop" (of a new instance of xfce4-terminal that was created offscreen)
  http://paste.ubuntu.com/10414211/

  "xprop -root" (in the offending ubiquity-dm session)
  http://paste.ubuntu.com/10414440/

  "/var/log/Xorg.0.log"
  http://paste.ubuntu.com/10413856/

  "xrandr"
  http://paste.ubuntu.com/10413911/

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubiquity/+bug/1425690/+subscriptions



More information about the foundations-bugs mailing list