diff options
author | Jamey Sharp <jamey@minilop.net> | 2010-05-21 23:13:51 -0700 |
---|---|---|
committer | Jamey Sharp <jamey@minilop.net> | 2010-06-03 14:03:22 -0700 |
commit | 80b5d3a3264d2c5167e5ac85a3b04af0f89cece1 (patch) | |
tree | 678ee80f7856b7c8d93ca702ce733fe87ddc9ac8 /Xext | |
parent | 5030540d6cd2aa9bbd4ecb7f4487616f9ef0140a (diff) |
Move each screen's screensaver data into ScreenRec.
Most references to the savedScreenInfo array already had the
corresponding screen pointer handy, which meant they usually looked like
"savedScreenInfo[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.
Signed-off-by: Jamey Sharp <jamey@minilop.net>
Reviewed-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Tested-by: Tiago Vignatti <tiago.vignatti@nokia.com> (i686 GNU/Linux)
Diffstat (limited to 'Xext')
-rw-r--r-- | Xext/panoramiX.c | 5 | ||||
-rw-r--r-- | Xext/panoramiXprocs.c | 12 | ||||
-rw-r--r-- | Xext/saver.c | 12 |
3 files changed, 15 insertions, 14 deletions
diff --git a/Xext/panoramiX.c b/Xext/panoramiX.c index edcbb49d5..594da0e95 100644 --- a/Xext/panoramiX.c +++ b/Xext/panoramiX.c @@ -836,13 +836,14 @@ PanoramiXConsolidate(void) saver->type = XRT_WINDOW; for (i = 0; i < PanoramiXNumScreens; i++) { + ScreenPtr pScreen = screenInfo.screens[i]; root->info[i].id = WindowTable[i]->drawable.id; root->u.win.class = InputOutput; root->u.win.root = TRUE; - saver->info[i].id = savedScreenInfo[i].wid; + saver->info[i].id = pScreen->screensaver.wid; saver->u.win.class = InputOutput; saver->u.win.root = TRUE; - defmap->info[i].id = (screenInfo.screens[i])->defColormap; + defmap->info[i].id = pScreen->defColormap; } AddResource(root->info[0].id, XRT_WINDOW, root); diff --git a/Xext/panoramiXprocs.c b/Xext/panoramiXprocs.c index 8752ca519..08ea3ec90 100644 --- a/Xext/panoramiXprocs.c +++ b/Xext/panoramiXprocs.c @@ -130,7 +130,7 @@ int PanoramiXCreateWindow(ClientPtr client) orig_x = stuff->x; orig_y = stuff->y; parentIsRoot = (stuff->parent == WindowTable[0]->drawable.id) || - (stuff->parent == savedScreenInfo[0].wid); + (stuff->parent == screenInfo.screens[0]->screensaver.wid); FOR_NSCREENS_BACKWARD(j) { stuff->wid = newWin->info[j].id; stuff->parent = parent->info[j].id; @@ -329,7 +329,7 @@ int PanoramiXReparentWindow(ClientPtr client) x = stuff->x; y = stuff->y; parentIsRoot = (stuff->parent == WindowTable[0]->drawable.id) || - (stuff->parent == savedScreenInfo[0].wid); + (stuff->parent == screenInfo.screens[0]->screensaver.wid); FOR_NSCREENS_BACKWARD(j) { stuff->window = win->info[j].id; stuff->parent = parent->info[j].id; @@ -476,7 +476,7 @@ int PanoramiXConfigureWindow(ClientPtr client) } if(pWin->parent && ((pWin->parent == WindowTable[0]) || - (pWin->parent->drawable.id == savedScreenInfo[0].wid))) + (pWin->parent->drawable.id == screenInfo.screens[0]->screensaver.wid))) { if ((Mask)stuff->mask & CWX) { x_offset = 0; @@ -563,7 +563,7 @@ int PanoramiXGetGeometry(ClientPtr client) rep.x = pWin->origin.x - wBorderWidth (pWin); rep.y = pWin->origin.y - wBorderWidth (pWin); if((pWin->parent == WindowTable[0]) || - (pWin->parent->drawable.id == savedScreenInfo[0].wid)) + (pWin->parent->drawable.id == screenInfo.screens[0]->screensaver.wid)) { rep.x += panoramiXdataPtr[0].x; rep.y += panoramiXdataPtr[0].y; @@ -597,7 +597,7 @@ int PanoramiXTranslateCoords(ClientPtr client) rep.child = None; if((pWin == WindowTable[0]) || - (pWin->drawable.id == savedScreenInfo[0].wid)) + (pWin->drawable.id == screenInfo.screens[0]->screensaver.wid)) { x = stuff->srcX - panoramiXdataPtr[0].x; y = stuff->srcY - panoramiXdataPtr[0].y; @@ -635,7 +635,7 @@ int PanoramiXTranslateCoords(ClientPtr client) rep.dstX = x - pDst->drawable.x; rep.dstY = y - pDst->drawable.y; if((pDst == WindowTable[0]) || - (pDst->drawable.id == savedScreenInfo[0].wid)) + (pWin->drawable.id == screenInfo.screens[0]->screensaver.wid)) { rep.dstX += panoramiXdataPtr[0].x; rep.dstY += panoramiXdataPtr[0].y; diff --git a/Xext/saver.c b/Xext/saver.c index fdcbac567..da61fbe60 100644 --- a/Xext/saver.c +++ b/Xext/saver.c @@ -285,7 +285,7 @@ CheckScreenPrivate (ScreenPtr pScreen) { free(pPriv); SetScreenPrivate (pScreen, NULL); - savedScreenInfo[pScreen->myNum].ExternalScreenSaver = NULL; + pScreen->screensaver.ExternalScreenSaver = NULL; } } @@ -304,7 +304,7 @@ MakeScreenPrivate (ScreenPtr pScreen) pPriv->hasWindow = FALSE; pPriv->installedMap = None; SetScreenPrivate (pScreen, pPriv); - savedScreenInfo[pScreen->myNum].ExternalScreenSaver = ScreenSaverHandle; + pScreen->screensaver.ExternalScreenSaver = ScreenSaverHandle; return pPriv; } @@ -504,7 +504,7 @@ SendScreenSaverNotify (ScreenPtr pScreen, int state, Bool forced) ev.state = state; ev.timestamp = currentTime.milliseconds; ev.root = WindowTable[pScreen->myNum]->drawable.id; - ev.window = savedScreenInfo[pScreen->myNum].wid; + ev.window = pScreen->screensaver.wid; ev.kind = kind; ev.forced = forced; WriteEventsToClient (pEv->client, 1, (xEvent *) &ev); @@ -559,7 +559,7 @@ CreateSaverWindow (ScreenPtr pScreen) Colormap wantMap; ColormapPtr pCmap; - pSaver = &savedScreenInfo[pScreen->myNum]; + pSaver = &pScreen->screensaver; if (pSaver->pWindow) { pSaver->pWindow = NullWindow; @@ -672,7 +672,7 @@ DestroySaverWindow (ScreenPtr pScreen) if (!pPriv || !pPriv->hasWindow) return FALSE; - pSaver = &savedScreenInfo[pScreen->myNum]; + pSaver = &pScreen->screensaver; if (pSaver->pWindow) { pSaver->pWindow = NullWindow; @@ -756,7 +756,7 @@ ProcScreenSaverQueryInfo (ClientPtr client) if (rc != Success) return rc; - pSaver = &savedScreenInfo[pDraw->pScreen->myNum]; + pSaver = &pDraw->pScreen->screensaver; pPriv = GetScreenPrivate (pDraw->pScreen); UpdateCurrentTime (); |