diff options
author | Eamon Walsh <ewalsh@tycho.nsa.gov> | 2007-11-05 19:08:36 -0500 |
---|---|---|
committer | Eamon Walsh <ewalsh@moss-charon.epoch.ncsc.mil> | 2007-11-05 19:08:36 -0500 |
commit | a52c9b2a59f27266557ff9d5d2c08492e04135a6 (patch) | |
tree | 705f11c54e8a31a07dde9ab6835032e2849e132b /miext | |
parent | c7e18beb3c87eb1ada9b21c4ffacd11c1939c087 (diff) | |
parent | 58332894c061ae96d6a457f65266660f5f65e88b (diff) |
Merge branch 'master' into XACE-SELINUX
Conflicts:
dix/dispatch.c
dix/property.c
hw/xfree86/common/xf86VidMode.c
include/xkbsrv.h
render/glyph.c
xkb/xkbActions.c
Diffstat (limited to 'miext')
-rwxr-xr-x | miext/damage/damage.c | 4 | ||||
-rw-r--r-- | miext/rootless/rootless.h | 4 | ||||
-rw-r--r-- | miext/rootless/rootlessScreen.c | 2 | ||||
-rw-r--r-- | miext/rootless/rootlessWindow.c | 26 | ||||
-rw-r--r-- | miext/rootless/safeAlpha/safeAlphaPicture.c | 2 | ||||
-rw-r--r-- | miext/shadow/shadow.c | 2 |
6 files changed, 35 insertions, 5 deletions
diff --git a/miext/damage/damage.c b/miext/damage/damage.c index 350819be3..bd626b390 100755 --- a/miext/damage/damage.c +++ b/miext/damage/damage.c @@ -1398,7 +1398,7 @@ damageText (DrawablePtr pDrawable, imageblt = (textType == TT_IMAGE8) || (textType == TT_IMAGE16); - charinfo = (CharInfoPtr *) ALLOCATE_LOCAL(count * sizeof(CharInfoPtr)); + charinfo = (CharInfoPtr *) xalloc(count * sizeof(CharInfoPtr)); if (!charinfo) return x; @@ -1420,7 +1420,7 @@ damageText (DrawablePtr pDrawable, (*pGC->ops->PolyGlyphBlt)(pDrawable, pGC, x, y, n, charinfo, FONTGLYPHS(pGC->font)); } - DEALLOCATE_LOCAL(charinfo); + xfree(charinfo); return x + w; } diff --git a/miext/rootless/rootless.h b/miext/rootless/rootless.h index f83defeb6..d9fdb6adb 100644 --- a/miext/rootless/rootless.h +++ b/miext/rootless/rootless.h @@ -432,4 +432,8 @@ void RootlessUpdateScreenPixmap(ScreenPtr pScreen); */ void RootlessRepositionWindows(ScreenPtr pScreen); +/* + * Bring all windows to the front of the Aqua stack + */ +void RootlessOrderAllWindows (void); #endif /* _ROOTLESS_H */ diff --git a/miext/rootless/rootlessScreen.c b/miext/rootless/rootlessScreen.c index 06ba53a4b..18673a8b6 100644 --- a/miext/rootless/rootlessScreen.c +++ b/miext/rootless/rootlessScreen.c @@ -84,7 +84,7 @@ RootlessUpdateScreenPixmap(ScreenPtr pScreen) pPix = (*pScreen->GetScreenPixmap)(pScreen); if (pPix == NULL) { - pPix = (*pScreen->CreatePixmap)(pScreen, 0, 0, pScreen->rootDepth); + pPix = (*pScreen->CreatePixmap)(pScreen, 0, 0, pScreen->rootDepth, 0); (*pScreen->SetScreenPixmap)(pPix); } diff --git a/miext/rootless/rootlessWindow.c b/miext/rootless/rootlessWindow.c index 512a4949f..e8f7a81a5 100644 --- a/miext/rootless/rootlessWindow.c +++ b/miext/rootless/rootlessWindow.c @@ -1376,3 +1376,29 @@ RootlessChangeBorderWidth(WindowPtr pWin, unsigned int width) RL_DEBUG_MSG("change border width end\n"); } + +/* + * RootlessOrderAllWindows + * Brings all X11 windows to the top of the window stack + * (i.e in front of Aqua windows) -- called when X11.app is given focus + */ +void +RootlessOrderAllWindows (void) +{ + int i; + WindowPtr pWin; + + RL_DEBUG_MSG("RootlessOrderAllWindows() "); + for (i = 0; i < screenInfo.numScreens; i++) { + if (screenInfo.screens[i] == NULL) continue; + pWin = WindowTable[i]; + if (pWin == NULL) continue; + + for (pWin = pWin->firstChild; pWin != NULL; pWin = pWin->nextSib) { + if (!pWin->realized) continue; + if (RootlessEnsureFrame(pWin) == NULL) continue; + RootlessReorderWindow (pWin); + } + } + RL_DEBUG_MSG("RootlessOrderAllWindows() done"); +} diff --git a/miext/rootless/safeAlpha/safeAlphaPicture.c b/miext/rootless/safeAlpha/safeAlphaPicture.c index 0ed2f3e79..57f1ae187 100644 --- a/miext/rootless/safeAlpha/safeAlphaPicture.c +++ b/miext/rootless/safeAlpha/safeAlphaPicture.c @@ -167,7 +167,7 @@ SafeAlphaComposite (CARD8 op, pDst->format = PICT_a8r8g8b8; } - if (pSrc->pDrawable && pMask->pDrawable && + if (pSrc && pMask && pSrc->pDrawable && pMask->pDrawable && !pSrc->transform && !pMask->transform && !pSrc->alphaMap && !pMask->alphaMap && !pMask->repeat && !pMask->componentAlpha && !pDst->alphaMap && diff --git a/miext/shadow/shadow.c b/miext/shadow/shadow.c index 74544b1a0..ef0df4091 100644 --- a/miext/shadow/shadow.c +++ b/miext/shadow/shadow.c @@ -233,7 +233,7 @@ shadowInit(ScreenPtr pScreen, ShadowUpdateProc update, ShadowWindowProc window) PixmapPtr pPixmap; pPixmap = pScreen->CreatePixmap(pScreen, pScreen->width, pScreen->height, - pScreen->rootDepth); + pScreen->rootDepth, 0); if (!pPixmap) return FALSE; |