~ubuntu-branches/ubuntu/oneiric/compiz/oneiric

« back to all changes in this revision

Viewing changes to src/screen.cpp

  • Committer: Package Import Robot
  • Author(s): Didier Roche
  • Date: 2011-09-28 14:15:21 UTC
  • mfrom: (0.168.12 upstream)
  • Revision ID: package-import@ubuntu.com-20110928141521-sf8s523pqyptq61f
Tags: 1:0.9.6-0ubuntu1
* New upstream release 0.9.6:
 - Windows which are marked transients of docks should be treated like docks (LP: #860397)
 - Applications which create multiple windows that are transients of each other can be given invalid stack positions (LP: #858625)
 - race condition in configureXWindow causes unpredicatable window geometry changes (LP: #860304)
 - invisible window when a window is mapped but not yet drawn on by the process mapping it (LP: #860286)
 - resizing bugs with xterm (LP: #854725)
 - Cannot open a window that starts iconified (LP: #732997)
 - maximized windows fail to update their input extents when undecorated (LP: #853734)
 - Clicking on a tweet/message link sometimes does not work (LP: #790565)
 - crash on closing a window (LP: #856015)
 - Windows move to 0,0 on compiz restarts (LP: #858629)
 - windows that are decorated while resizing can cause incorrect resize results (LP: #860306)
 - remove transient window handling from unity-window-decorator (LP: #856096)

Show diffs side-by-side

added added

removed removed

Lines of Context:
765
765
                compLogMessage ("core", CompLogLevelDebug, "however, this may be a false positive");
766
766
        }
767
767
 
768
 
        if (dbg->serverWindowsChanged () && dbg->checkSanity (priv->serverWindows))
 
768
        if (dbg->serverWindowsChanged () && dbg->checkSanity (priv->windows))
769
769
            compLogMessage ("core", CompLogLevelDebug, "windows are stacked incorrectly");
770
770
    }
771
771
}
1756
1756
 
1757
1757
            if (moveX != 0 || moveY != 0)
1758
1758
            {
1759
 
                w->move (moveX, moveY, true);
1760
 
                w->syncPosition ();
 
1759
                unsigned int valueMask = CWX | CWY;
 
1760
                XWindowChanges xwc;
 
1761
 
 
1762
                xwc.x = w->serverGeometry ().x () + moveX;
 
1763
                xwc.y = w->serverGeometry ().y () + moveY;
 
1764
 
 
1765
                w->configureXWindow (valueMask, &xwc);
1761
1766
            }
1762
1767
        }
1763
1768
    }
3505
3510
 
3506
3511
    foreach (CompWindow *w, priv->windows)
3507
3512
    {
 
3513
        unsigned int valueMask = CWX | CWY;
 
3514
        XWindowChanges xwc;
 
3515
 
3508
3516
        if (w->onAllViewports ())
3509
3517
            continue;
3510
3518
 
3516
3524
        if (w->saveMask () & CWY)
3517
3525
            w->saveWc ().y += pnt.y ();
3518
3526
 
3519
 
        /* move */
3520
 
        w->move (pnt.x (), pnt.y ());
 
3527
        xwc.x = w->serverGeometry ().x () + pnt.x ();
 
3528
        xwc.y = w->serverGeometry ().y () + pnt.y ();
3521
3529
 
3522
 
        if (sync)
3523
 
            w->syncPosition ();
 
3530
        w->configureXWindow (valueMask, &xwc);
3524
3531
    }
3525
3532
 
3526
3533
    if (sync)