diff options
author | Dave Airlie <airlied@redhat.com> | 2011-03-24 14:04:25 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-03-28 10:06:32 +1000 |
commit | eb9266c7176eb240a85e72beda9b6033338294f1 (patch) | |
tree | 0680929f235ebe16e2974e7ed33f03c35d8cffc1 /hw/kdrive | |
parent | 03f45df93469f6aef391e97007b9614e0770cc4c (diff) |
consolidate SetRootClip (v2)
each DDX has its own copy, I've taken the darwin one,
though I'm not sure why it needs the pOldClip piece that nobody
else has and the commit msg is like an "Updates from magic land"
type message.
This removes the main uses of pWin->winSize from the DDXen.
v2: drop old clip like ajax suggests.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Diffstat (limited to 'hw/kdrive')
-rw-r--r-- | hw/kdrive/src/kdrive.c | 93 | ||||
-rw-r--r-- | hw/kdrive/src/kdrive.h | 3 |
2 files changed, 2 insertions, 94 deletions
diff --git a/hw/kdrive/src/kdrive.c b/hw/kdrive/src/kdrive.c index c688eb038..f034ce463 100644 --- a/hw/kdrive/src/kdrive.c +++ b/hw/kdrive/src/kdrive.c @@ -92,95 +92,6 @@ static Bool kdCaughtSignal = FALSE; KdOsFuncs *kdOsFuncs; void -KdSetRootClip (ScreenPtr pScreen, BOOL enable) -{ - WindowPtr pWin = pScreen->root; - WindowPtr pChild; - Bool WasViewable; - Bool anyMarked = FALSE; - WindowPtr pLayerWin; - BoxRec box; - - if (!pWin) - return; - WasViewable = (Bool)(pWin->viewable); - if (WasViewable) - { - for (pChild = pWin->firstChild; pChild; pChild = pChild->nextSib) - { - (void) (*pScreen->MarkOverlappedWindows)(pChild, - pChild, - &pLayerWin); - } - (*pScreen->MarkWindow) (pWin); - anyMarked = TRUE; - if (pWin->valdata) - { - if (HasBorder (pWin)) - { - RegionPtr borderVisible; - - borderVisible = RegionCreate(NullBox, 1); - RegionSubtract(borderVisible, - &pWin->borderClip, &pWin->winSize); - pWin->valdata->before.borderVisible = borderVisible; - } - pWin->valdata->before.resized = TRUE; - } - } - - if (enable) - { - box.x1 = 0; - box.y1 = 0; - box.x2 = pScreen->width; - box.y2 = pScreen->height; - pWin->drawable.width = pScreen->width; - pWin->drawable.height = pScreen->height; - RegionInit(&pWin->winSize, &box, 1); - RegionInit(&pWin->borderSize, &box, 1); - RegionReset(&pWin->borderClip, &box); - RegionBreak(&pWin->clipList); - } - else - { - RegionEmpty(&pWin->borderClip); - RegionBreak(&pWin->clipList); - } - - ResizeChildrenWinSize (pWin, 0, 0, 0, 0); - - if (WasViewable) - { - if (pWin->firstChild) - { - anyMarked |= (*pScreen->MarkOverlappedWindows)(pWin->firstChild, - pWin->firstChild, - (WindowPtr *)NULL); - } - else - { - (*pScreen->MarkWindow) (pWin); - anyMarked = TRUE; - } - - - if (anyMarked) - (*pScreen->ValidateTree)(pWin, NullWindow, VTOther); - } - - if (WasViewable) - { - if (anyMarked) - (*pScreen->HandleExposures)(pWin); - if (anyMarked && pScreen->PostValidateTree) - (*pScreen->PostValidateTree)(pWin, NullWindow, VTOther); - } - if (pWin->realized) - WindowsRestructured (); -} - -void KdDisableScreen (ScreenPtr pScreen) { KdScreenPriv(pScreen); @@ -188,7 +99,7 @@ KdDisableScreen (ScreenPtr pScreen) if (!pScreenPriv->enabled) return; if (!pScreenPriv->closed) - KdSetRootClip (pScreen, FALSE); + SetRootClip (pScreen, FALSE); KdDisableColormap (pScreen); if (!pScreenPriv->screen->dumb && pScreenPriv->card->cfuncs->disableAccel) (*pScreenPriv->card->cfuncs->disableAccel) (pScreen); @@ -271,7 +182,7 @@ KdEnableScreen (ScreenPtr pScreen) if (!pScreenPriv->screen->dumb && pScreenPriv->card->cfuncs->enableAccel) (*pScreenPriv->card->cfuncs->enableAccel) (pScreen); KdEnableColormap (pScreen); - KdSetRootClip (pScreen, TRUE); + SetRootClip (pScreen, TRUE); if (pScreenPriv->card->cfuncs->dpms) (*pScreenPriv->card->cfuncs->dpms) (pScreen, pScreenPriv->dpmsState); return TRUE; diff --git a/hw/kdrive/src/kdrive.h b/hw/kdrive/src/kdrive.h index 3ca98146b..2ab535aef 100644 --- a/hw/kdrive/src/kdrive.h +++ b/hw/kdrive/src/kdrive.h @@ -387,9 +387,6 @@ KdStoreColors (ColormapPtr pCmap, int ndef, xColorItem *pdefs); extern miPointerScreenFuncRec kdPointerScreenFuncs; void -KdSetRootClip (ScreenPtr pScreen, BOOL enable); - -void KdDisableScreen (ScreenPtr pScreen); void |