From c61bb8cc59bf645f1bf4dbc5fd5464d559b3ecad Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Mon, 20 Jun 2016 12:18:53 +0200 Subject: Move each screen's root-window pointer into ScreenRec. Backported from X.org: commit e7fae9ecc42ab5e73b89117722dbf4117d928f9a Author: Jamey Sharp Date: Sat May 22 00:26:28 2010 -0700 Move each screen's root-window pointer into ScreenRec. Many references to the WindowTable array already had the corresponding screen pointer handy, which meant they usually looked like "WindowTable[pScreen->myNum]". Adding a field to ScreenRec instead of keeping this information in a parallel array simplifies those expressions, and eliminates a MAXSCREENS-sized array. Since dix uses this data, a screen private entry isn't appropriate. xf86-video-dummy currently uses WindowTable, so it needs to be updated to reflect this change. Signed-off-by: Jamey Sharp Reviewed-by: Tiago Vignatti Tested-by: Tiago Vignatti (i686 GNU/Linux) Backport to nx-libs: Mike Gabriel --- nx-X11/programs/Xserver/mi/mibank.c | 6 +++--- nx-X11/programs/Xserver/mi/midispcur.c | 10 +++++----- nx-X11/programs/Xserver/mi/miexpose.c | 4 ++-- nx-X11/programs/Xserver/mi/mioverlay.c | 4 ++-- 4 files changed, 12 insertions(+), 12 deletions(-) (limited to 'nx-X11/programs/Xserver/mi') diff --git a/nx-X11/programs/Xserver/mi/mibank.c b/nx-X11/programs/Xserver/mi/mibank.c index 24e202094..b607af1c1 100644 --- a/nx-X11/programs/Xserver/mi/mibank.c +++ b/nx-X11/programs/Xserver/mi/mibank.c @@ -1768,7 +1768,7 @@ miBankGetImage( pBankImage); (*pScreenPriv->pBankGC->ops->CopyArea)( - (DrawablePtr)WindowTable[pScreen->myNum], + (DrawablePtr)pScreen->root, (DrawablePtr)pScreenPriv->pBankPixmap, pScreenPriv->pBankGC, sx + pDrawable->x, sy + pDrawable->y, w, h, 0, 0); @@ -1835,7 +1835,7 @@ miBankGetSpans( continue; (*pScreenPriv->pBankGC->ops->CopyArea)( - (DrawablePtr)WindowTable[pScreen->myNum], + (DrawablePtr)pScreen->root, (DrawablePtr)pScreenPriv->pBankPixmap, pScreenPriv->pBankGC, ppt->x, ppt->y, *pwidth, 1, 0, 0); @@ -1958,7 +1958,7 @@ miBankCopyWindow( ScreenPtr pScreen = pWindow->drawable.pScreen; GCPtr pGC; int dx, dy, nBox; - DrawablePtr pDrawable = (DrawablePtr)WindowTable[pScreen->myNum]; + DrawablePtr pDrawable = (DrawablePtr)pScreen->root; RegionPtr pRgnDst; BoxPtr pBox, pBoxTmp, pBoxNext, pBoxBase, pBoxNew1, pBoxNew2; XID subWindowMode = IncludeInferiors; diff --git a/nx-X11/programs/Xserver/mi/midispcur.c b/nx-X11/programs/Xserver/mi/midispcur.c index a16c2977e..6ffb9efea 100644 --- a/nx-X11/programs/Xserver/mi/midispcur.c +++ b/nx-X11/programs/Xserver/mi/midispcur.c @@ -477,7 +477,7 @@ miDCPutUpCursor (pScreen, pCursor, x, y, source, mask) return FALSE; } pScreenPriv = (miDCScreenPtr) pScreen->devPrivates[miDCScreenIndex].ptr; - pWin = WindowTable[pScreen->myNum]; + pWin = pScreen->root; #ifdef ARGB_CURSOR if (pPriv->pPicture) { @@ -523,7 +523,7 @@ miDCSaveUnderCursor (pScreen, x, y, w, h) pScreenPriv = (miDCScreenPtr) pScreen->devPrivates[miDCScreenIndex].ptr; pSave = pScreenPriv->pSave; - pWin = WindowTable[pScreen->myNum]; + pWin = pScreen->root; if (!pSave || pSave->drawable.width < w || pSave->drawable.height < h) { if (pSave) @@ -555,7 +555,7 @@ miDCRestoreUnderCursor (pScreen, x, y, w, h) pScreenPriv = (miDCScreenPtr) pScreen->devPrivates[miDCScreenIndex].ptr; pSave = pScreenPriv->pSave; - pWin = WindowTable[pScreen->myNum]; + pWin = pScreen->root; if (!pSave) return FALSE; if (!EnsureGC(pScreenPriv->pRestoreGC, pWin)) @@ -581,7 +581,7 @@ miDCChangeSave (pScreen, x, y, w, h, dx, dy) pScreenPriv = (miDCScreenPtr) pScreen->devPrivates[miDCScreenIndex].ptr; pSave = pScreenPriv->pSave; - pWin = WindowTable[pScreen->myNum]; + pWin = pScreen->root; /* * restore the bits which are about to get trashed */ @@ -723,7 +723,7 @@ miDCMoveCursor (pScreen, pCursor, x, y, w, h, dx, dy, source, mask) return FALSE; } pScreenPriv = (miDCScreenPtr) pScreen->devPrivates[miDCScreenIndex].ptr; - pWin = WindowTable[pScreen->myNum]; + pWin = pScreen->root; pTemp = pScreenPriv->pTemp; if (!pTemp || pTemp->drawable.width != pScreenPriv->pSave->drawable.width || diff --git a/nx-X11/programs/Xserver/mi/miexpose.c b/nx-X11/programs/Xserver/mi/miexpose.c index 379dd380f..7b7480a91 100644 --- a/nx-X11/programs/Xserver/mi/miexpose.c +++ b/nx-X11/programs/Xserver/mi/miexpose.c @@ -468,7 +468,7 @@ miSendExposures(pWin, pRgn, dx, dy) if(!pWin->parent) { x = panoramiXdataPtr[scrnum].x; y = panoramiXdataPtr[scrnum].y; - pWin = WindowTable[0]; + pWin = screenInfo.screens[0]->root; realWin = pWin->drawable.id; } else if (scrnum) { PanoramiXRes *win; @@ -715,7 +715,7 @@ int what; gcmask |= GCFunction | GCClipMask; i = pScreen->myNum; - pRoot = WindowTable[i]; + pRoot = screenInfo.screens[i]->root; pBgWin = pWin; if (what == PW_BORDER) diff --git a/nx-X11/programs/Xserver/mi/mioverlay.c b/nx-X11/programs/Xserver/mi/mioverlay.c index 96d5cc4f0..e89ce8fa0 100644 --- a/nx-X11/programs/Xserver/mi/mioverlay.c +++ b/nx-X11/programs/Xserver/mi/mioverlay.c @@ -317,7 +317,7 @@ miOverlayReparentWindow(WindowPtr pWin, WindowPtr pPriorParent) { if(IN_UNDERLAY(pWin) || HasUnderlayChildren(pWin)) { /* This could probably be more optimal */ - RebuildTree(WindowTable[pWin->drawable.pScreen->myNum]->firstChild); + RebuildTree(pWin->drawable.pScreen->root->firstChild); } } @@ -1733,7 +1733,7 @@ miOverlayChangeBorderWidth( void miOverlaySetRootClip(ScreenPtr pScreen, Bool enable) { - WindowPtr pRoot = WindowTable[pScreen->myNum]; + WindowPtr pRoot = pScreen->root; miOverlayTreePtr pTree = MIOVERLAY_GET_WINDOW_TREE(pRoot); MARK_UNDERLAY(pRoot); -- cgit v1.2.3