← Back to team overview

dx-packages team mailing list archive

[Bug 858625] Re: Applications which create multiple windows that are transients of each other can be given invalid stack positions

 

** Changed in: unity (Ubuntu)
       Status: New => Fix Released

-- 
You received this bug notification because you are a member of DX
Packages, which is subscribed to unity in Ubuntu.
Matching subscriptions: dx-packages
https://bugs.launchpad.net/bugs/858625

Title:
  Applications which create multiple windows that are transients of each
  other can be given invalid stack positions

Status in Compiz Core:
  Fix Released
Status in Unity:
  Fix Released
Status in “compiz” package in Ubuntu:
  Fix Released
Status in “unity” package in Ubuntu:
  Fix Released

Bug description:
   
    Windows A, B and C map (placed on top), and must stack relative to each other
    
    Window A gets stacked beneath D (which is a panel),
    Window B should be stacked above A,
    Window C should be stacked above B,
    
    What happened was that updateAttributes would be called and
    request to put window B above A, which it was already above in
    CompScreen::windows, so that stacking request becomes a no-op. In this case
    we check if the window is pending a restack and then request to put it
    above the same window it was already a sibling to if findSiblingBelow found
    that to be the case.

  This could case GIMP and Libreoffice to be stacked above panels in
  some cases on startup, since those windows must be placed at the top
  of the stack on startup, and if valid stack positions are not given to
  them by updateAttributes because we filtered them out as no-ops, then
  they would remain at the top of the stack.

To manage notifications about this bug go to:
https://bugs.launchpad.net/compiz-core/+bug/858625/+subscriptions