X11rdp: use lossy compression in more places
This commit is contained in:
parent
6fcf380ead
commit
d2f0e459f4
@ -108,7 +108,8 @@ rdpPolyFillRect(DrawablePtr pDrawable, GCPtr pGC, int nrectFill,
|
|||||||
LLOGLN(10, ("rdpPolyFillRect: getting dirty"));
|
LLOGLN(10, ("rdpPolyFillRect: getting dirty"));
|
||||||
g_screenPriv.is_dirty = 1;
|
g_screenPriv.is_dirty = 1;
|
||||||
pDirtyPriv = &g_screenPriv;
|
pDirtyPriv = &g_screenPriv;
|
||||||
dirty_type = RDI_IMGLL;
|
dirty_type = (FillTiled == pGC->fillStyle) ?
|
||||||
|
RDI_IMGLY : RDI_IMGLL;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -125,7 +126,8 @@ rdpPolyFillRect(DrawablePtr pDrawable, GCPtr pGC, int nrectFill,
|
|||||||
LLOGLN(10, ("rdpPolyFillRect: getting dirty"));
|
LLOGLN(10, ("rdpPolyFillRect: getting dirty"));
|
||||||
pDstPriv->is_dirty = 1;
|
pDstPriv->is_dirty = 1;
|
||||||
pDirtyPriv = pDstPriv;
|
pDirtyPriv = pDstPriv;
|
||||||
dirty_type = RDI_FILL;
|
dirty_type = (FillTiled == pGC->fillStyle) ?
|
||||||
|
RDI_IMGLY : RDI_IMGLL;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -151,7 +153,8 @@ rdpPolyFillRect(DrawablePtr pDrawable, GCPtr pGC, int nrectFill,
|
|||||||
LLOGLN(10, ("rdpPolyFillRect: getting dirty"));
|
LLOGLN(10, ("rdpPolyFillRect: getting dirty"));
|
||||||
g_screenPriv.is_dirty = 1;
|
g_screenPriv.is_dirty = 1;
|
||||||
pDirtyPriv = &g_screenPriv;
|
pDirtyPriv = &g_screenPriv;
|
||||||
dirty_type = RDI_IMGLL;
|
dirty_type = (FillTiled == pGC->fillStyle) ?
|
||||||
|
RDI_IMGLY : RDI_IMGLL;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -192,7 +195,8 @@ rdpPolyFillRect(DrawablePtr pDrawable, GCPtr pGC, int nrectFill,
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
draw_item_add_img_region(pDirtyPriv, fill_reg, GXcopy, RDI_IMGLL, 2);
|
draw_item_add_img_region(pDirtyPriv, fill_reg, GXcopy,
|
||||||
|
dirty_type, 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (got_id)
|
else if (got_id)
|
||||||
@ -214,7 +218,8 @@ rdpPolyFillRect(DrawablePtr pDrawable, GCPtr pGC, int nrectFill,
|
|||||||
for (j = REGION_NUM_RECTS(fill_reg) - 1; j >= 0; j--)
|
for (j = REGION_NUM_RECTS(fill_reg) - 1; j >= 0; j--)
|
||||||
{
|
{
|
||||||
box = REGION_RECTS(fill_reg)[j];
|
box = REGION_RECTS(fill_reg)[j];
|
||||||
rdpup_fill_rect(box.x1, box.y1, box.x2 - box.x1, box.y2 - box.y1);
|
rdpup_fill_rect(box.x1, box.y1,
|
||||||
|
box.x2 - box.x1, box.y2 - box.y1);
|
||||||
}
|
}
|
||||||
|
|
||||||
rdpup_set_opcode(GXcopy);
|
rdpup_set_opcode(GXcopy);
|
||||||
@ -251,13 +256,15 @@ rdpPolyFillRect(DrawablePtr pDrawable, GCPtr pGC, int nrectFill,
|
|||||||
pGC->alu == GXxor*/)) /* todo, why dosen't xor work? */
|
pGC->alu == GXxor*/)) /* todo, why dosen't xor work? */
|
||||||
{
|
{
|
||||||
LLOGLN(10, ("rdpPolyFillRect: 3"));
|
LLOGLN(10, ("rdpPolyFillRect: 3"));
|
||||||
draw_item_add_fill_region(pDirtyPriv, &clip_reg, pGC->fgPixel,
|
draw_item_add_fill_region(pDirtyPriv, &clip_reg,
|
||||||
|
pGC->fgPixel,
|
||||||
pGC->alu);
|
pGC->alu);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
LLOGLN(10, ("rdpPolyFillRect: 4"));
|
LLOGLN(10, ("rdpPolyFillRect: 4"));
|
||||||
draw_item_add_img_region(pDirtyPriv, &clip_reg, GXcopy, RDI_IMGLL, 2);
|
draw_item_add_img_region(pDirtyPriv, &clip_reg, GXcopy,
|
||||||
|
dirty_type, 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (got_id)
|
else if (got_id)
|
||||||
@ -281,7 +288,8 @@ rdpPolyFillRect(DrawablePtr pDrawable, GCPtr pGC, int nrectFill,
|
|||||||
for (j = num_clips - 1; j >= 0; j--)
|
for (j = num_clips - 1; j >= 0; j--)
|
||||||
{
|
{
|
||||||
box = REGION_RECTS(&clip_reg)[j];
|
box = REGION_RECTS(&clip_reg)[j];
|
||||||
rdpup_fill_rect(box.x1, box.y1, box.x2 - box.x1, box.y2 - box.y1);
|
rdpup_fill_rect(box.x1, box.y1,
|
||||||
|
box.x2 - box.x1, box.y2 - box.y1);
|
||||||
}
|
}
|
||||||
|
|
||||||
rdpup_set_opcode(GXcopy);
|
rdpup_set_opcode(GXcopy);
|
||||||
@ -291,7 +299,8 @@ rdpPolyFillRect(DrawablePtr pDrawable, GCPtr pGC, int nrectFill,
|
|||||||
for (j = num_clips - 1; j >= 0; j--)
|
for (j = num_clips - 1; j >= 0; j--)
|
||||||
{
|
{
|
||||||
box = REGION_RECTS(&clip_reg)[j];
|
box = REGION_RECTS(&clip_reg)[j];
|
||||||
rdpup_send_area(&id, box.x1, box.y1, box.x2 - box.x1, box.y2 - box.y1);
|
rdpup_send_area(&id, box.x1, box.y1,
|
||||||
|
box.x2 - box.x1, box.y2 - box.y1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -135,7 +135,7 @@ rdpPutImage(DrawablePtr pDst, GCPtr pGC, int depth, int x, int y,
|
|||||||
LLOGLN(10, ("rdpPutImage: getting dirty"));
|
LLOGLN(10, ("rdpPutImage: getting dirty"));
|
||||||
g_screenPriv.is_dirty = 1;
|
g_screenPriv.is_dirty = 1;
|
||||||
pDirtyPriv = &g_screenPriv;
|
pDirtyPriv = &g_screenPriv;
|
||||||
dirty_type = RDI_IMGLL;
|
dirty_type = RDI_IMGLY;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -827,7 +827,7 @@ xrdp_is_os(PixmapPtr pix, rdpPixmapPtr priv)
|
|||||||
LLOGLN(10, ("xrdp_is_os: queuing invalidating all"));
|
LLOGLN(10, ("xrdp_is_os: queuing invalidating all"));
|
||||||
draw_item_remove_all(priv);
|
draw_item_remove_all(priv);
|
||||||
RegionInit(®1, &box, 0);
|
RegionInit(®1, &box, 0);
|
||||||
draw_item_add_img_region(priv, ®1, GXcopy, RDI_IMGLL, 16);
|
draw_item_add_img_region(priv, ®1, GXcopy, RDI_IMGLY, 16);
|
||||||
RegionUninit(®1);
|
RegionUninit(®1);
|
||||||
priv->is_dirty = 1;
|
priv->is_dirty = 1;
|
||||||
priv->con_number = g_con_number;
|
priv->con_number = g_con_number;
|
||||||
@ -1212,7 +1212,7 @@ rdpClearToBackground(WindowPtr pWin, int x, int y, int w, int h,
|
|||||||
|
|
||||||
if (g_do_dirty_ons)
|
if (g_do_dirty_ons)
|
||||||
{
|
{
|
||||||
draw_item_add_img_region(&g_screenPriv, ®, GXcopy, RDI_IMGLL, 16);
|
draw_item_add_img_region(&g_screenPriv, ®, GXcopy, RDI_IMGLY, 16);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -1250,7 +1250,7 @@ rdpRestoreAreas(WindowPtr pWin, RegionPtr prgnExposed)
|
|||||||
|
|
||||||
if (g_do_dirty_ons)
|
if (g_do_dirty_ons)
|
||||||
{
|
{
|
||||||
draw_item_add_img_region(&g_screenPriv, ®, GXcopy, RDI_IMGLL, 16);
|
draw_item_add_img_region(&g_screenPriv, ®, GXcopy, RDI_IMGLY, 16);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -1415,7 +1415,7 @@ rdpComposite(CARD8 op, PicturePtr pSrc, PicturePtr pMask, PicturePtr pDst,
|
|||||||
LLOGLN(10, ("rdpComposite: getting dirty"));
|
LLOGLN(10, ("rdpComposite: getting dirty"));
|
||||||
g_screenPriv.is_dirty = 1;
|
g_screenPriv.is_dirty = 1;
|
||||||
pDirtyPriv = &g_screenPriv;
|
pDirtyPriv = &g_screenPriv;
|
||||||
dirty_type = RDI_IMGLL;
|
dirty_type = g_doing_font ? RDI_IMGLL : RDI_IMGLY;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user