Actually use filter kernel size to expand transform redisplay box
This commit is contained in:
parent
3fdb963f6e
commit
eb222e6412
|
@ -118,10 +118,10 @@ xf86RotateCrtcRedisplay (xf86CrtcPtr crtc, RegionPtr region)
|
||||||
BoxRec dst_box;
|
BoxRec dst_box;
|
||||||
|
|
||||||
dst_box = *b;
|
dst_box = *b;
|
||||||
dst_box.x1 -= crtc->filter_width >> 2;
|
dst_box.x1 -= crtc->filter_width >> 1;
|
||||||
dst_box.x2 += crtc->filter_width >> 2;
|
dst_box.x2 += crtc->filter_width >> 1;
|
||||||
dst_box.y1 -= crtc->filter_width >> 2;
|
dst_box.y1 -= crtc->filter_height >> 1;
|
||||||
dst_box.y2 += crtc->filter_width >> 2;
|
dst_box.y2 += crtc->filter_height >> 1;
|
||||||
PictureTransformBounds (&dst_box, &crtc->framebuffer_to_crtc);
|
PictureTransformBounds (&dst_box, &crtc->framebuffer_to_crtc);
|
||||||
CompositePicture (PictOpSrc,
|
CompositePicture (PictOpSrc,
|
||||||
src, NULL, dst,
|
src, NULL, dst,
|
||||||
|
@ -408,6 +408,11 @@ xf86CrtcRotate (xf86CrtcPtr crtc, DisplayModePtr mode, Rotation rotation)
|
||||||
}
|
}
|
||||||
} else
|
} else
|
||||||
new_filter = transform->filter;
|
new_filter = transform->filter;
|
||||||
|
if (new_filter)
|
||||||
|
{
|
||||||
|
new_width = new_filter->width;
|
||||||
|
new_height = new_filter->height;
|
||||||
|
}
|
||||||
PictureTransformMultiply (&crtc_to_fb, &transform->transform, &crtc_to_fb);
|
PictureTransformMultiply (&crtc_to_fb, &transform->transform, &crtc_to_fb);
|
||||||
PictureTransformMultiply (&fb_to_crtc, &fb_to_crtc, &transform->inverse);
|
PictureTransformMultiply (&fb_to_crtc, &fb_to_crtc, &transform->inverse);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue