~focus-follows-mouse/ubuntu/precise/compiz/fix-883383

« back to all changes in this revision

Viewing changes to src/window.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Didier Roche
  • Date: 2011-03-22 21:45:34 UTC
  • mfrom: (0.168.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20110322214534-l6i6ds54os5uoqt1
Tags: 1:0.9.4git20110322-0ubuntu1
* New upstream bug fix snapshot:
  - Application windows can sometimes fail to display and will
    mask regions of the screen (LP: #709461)
  - Compiz switcher Alt-Tab order is not predictable - should
    maintain LIFO ordering in application switcher (LP: #175874)
  - after compiz crashed, gnome-panel isn't mapped again (LP: #711378)
  - invisible windows border problem (LP: #710271)
  - Compiz thinks you are clicking in an edge window when you
    are not (LP: #734250)
  - Add test case for invisible window regressions (LP: #736876)
  - often can't alt-click-dnd to move the focussed dialog (LP: #711911)
  - When windows open for the first time they should not hide (LP: #723878)
  - Unity Grid is broken for multi-monitor setups (LP: #709221)
  - Pixmaps trashed during animations when window is unmapped (LP: #733331)
  - Windows have blank decorations when rapidly closing and
    reopening (LP: #733328)
  - Unity is not restored on unity/compiz crash: compiz doesn't register
    properly with gnome-session (LP: #716462)
* remove the patch taken from upstream
* refresh u-w-d patch with latest upstream work
* debian/compiz-core.install:
  - image move to the final destination
* debian/patches/100_bump_core.h.patch:
  - bump for ABI breakage
* debian/compiz-decorator:
  - use gtk-window-decorator and not unity-window-decorator as it's really
    crashy for now (will probably redo an upload tomorrow with a fixed
    decorator)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1323
1323
        unsigned int   xwcm;
1324
1324
        int                gravity = priv->sizeHints.win_gravity;
1325
1325
 
 
1326
        if (priv->frame)
 
1327
            priv->unreparent ();
 
1328
 
1326
1329
        /* revert gravity adjustment made at MapNotify time */
1327
1330
        xwc.x   = priv->serverGeometry.x ();
1328
1331
        xwc.y   = priv->serverGeometry.y ();
1438
1441
                            priv->attrib.width, priv->attrib.height,
1439
1442
                            priv->attrib.border_width);
1440
1443
 
1441
 
        if (!priv->mapNum && priv->unmapRefCnt > 0 &&
1442
 
             priv->attrib.map_state == IsViewable)
1443
 
        {
1444
 
            /* keep old pixmap for windows that are unmapped on the client side,
1445
 
             * but not yet on our side as it's pretty likely that plugins are
1446
 
             * currently using it for animations
1447
 
             */
1448
 
        }
1449
 
        else
1450
 
        {
1451
 
            priv->width = pw;
1452
 
            priv->height = ph;
1453
 
        }
 
1444
        priv->width = pw;
 
1445
        priv->height = ph;
1454
1446
 
1455
1447
        if (priv->mapNum)
1456
1448
            priv->updateRegion ();
5007
4999
}
5008
5000
 
5009
5001
CompWindowExtents &
 
5002
CompWindow::border () const
 
5003
{
 
5004
    return priv->border;
 
5005
}
 
5006
 
 
5007
CompWindowExtents &
5010
5008
CompWindow::input () const
5011
5009
{
5012
 
    return priv->border;
 
5010
    return priv->input;
5013
5011
}
5014
5012
 
5015
5013
CompWindowExtents &
5639
5637
 
5640
5638
        recalcActions ();
5641
5639
 
5642
 
        data[0] = i->left;
5643
 
        data[1] = i->right;
5644
 
        data[2] = i->top;
5645
 
        data[3] = i->bottom;
 
5640
        /* Use b for _NET_WM_FRAME_EXTENTS here because
 
5641
         * that is the representation of the actual decoration
 
5642
         * around the window that the user sees and should
 
5643
         * be used for placement and such */
 
5644
 
 
5645
        data[0] = b->left;
 
5646
        data[1] = b->right;
 
5647
        data[2] = b->top;
 
5648
        data[3] = b->bottom;
5646
5649
 
5647
5650
        XChangeProperty (screen->dpy (), priv->id,
5648
5651
                         Atoms::frameExtents,