Add support for gradients and solid fills to Render.

Changed the semantics of the Convolution filter a bit. It now doesn't try
    to normalize the filter values but leaves this to the client. This
    gives more reasonable behaviour in the limit where the filter
    parameters sum up to 0.
This commit is contained in:
Lars Knoll 2005-06-29 11:57:16 +00:00
parent ce0e11aeac
commit d8a98454e3

View File

@ -546,11 +546,11 @@ kaaComposite(CARD8 op,
KaaScreenPriv (pDst->pDrawable->pScreen);
int ret = -1;
if (!pMask)
if (!pMask && pSrc->pDrawable)
{
if (op == PictOpSrc)
{
if (pScreenPriv->enabled && pSrc->pDrawable->width == 1 &&
if (pScreenPriv->enabled && pSrc->pDrawable && pSrc->pDrawable->width == 1 &&
pSrc->pDrawable->height == 1 && pSrc->repeat)
{
ret = kaaTryDriverSolidFill(pSrc, pDst, xSrc, ySrc, xDst, yDst,
@ -592,7 +592,8 @@ kaaComposite(CARD8 op,
}
}
if (pScreenPriv->enabled && pKaaScr->info->PrepareComposite &&
if (pSrc->pDrawable && (!pMask || pMask->pDrawable) &&
pScreenPriv->enabled && pKaaScr->info->PrepareComposite &&
!pSrc->alphaMap && (!pMask || !pMask->alphaMap) && !pDst->alphaMap)
{
ret = kaaTryDriverComposite(op, pSrc, pMask, pDst, xSrc, ySrc, xMask,