libfreerdp-gdi: added gdi_surface_frame_marker
Frame markes are not really implemented. Just SendFrameAcknowledge on SURFACECMD_FRAMEACTION_END if settings->FrameAcknowledge > 0 This fixes issue #1352
This commit is contained in:
parent
780d451afa
commit
e0e337e278
@ -739,6 +739,28 @@ void gdi_ellipse_cb(rdpContext* context, ELLIPSE_CB_ORDER* ellipse_cb)
|
|||||||
fprintf(stderr, "EllipseCB\n");
|
fprintf(stderr, "EllipseCB\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void gdi_surface_frame_marker(rdpContext* context, SURFACE_FRAME_MARKER* surface_frame_marker)
|
||||||
|
{
|
||||||
|
DEBUG_GDI("frameId %d frameAction %d",
|
||||||
|
surface_frame_marker->frameId,
|
||||||
|
surface_frame_marker->frameAction);
|
||||||
|
|
||||||
|
/* TODO: Implement frame marker completely */
|
||||||
|
|
||||||
|
switch (surface_frame_marker->frameAction)
|
||||||
|
{
|
||||||
|
case SURFACECMD_FRAMEACTION_BEGIN:
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SURFACECMD_FRAMEACTION_END:
|
||||||
|
if (context->instance->settings->FrameAcknowledge > 0)
|
||||||
|
{
|
||||||
|
IFCALL(context->instance->update->SurfaceFrameAcknowledge, context, surface_frame_marker->frameId);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int tilenum = 0;
|
int tilenum = 0;
|
||||||
|
|
||||||
void gdi_surface_bits(rdpContext* context, SURFACE_BITS_COMMAND* surface_bits_command)
|
void gdi_surface_bits(rdpContext* context, SURFACE_BITS_COMMAND* surface_bits_command)
|
||||||
@ -890,6 +912,7 @@ void gdi_register_update_callbacks(rdpUpdate* update)
|
|||||||
primary->EllipseCB = gdi_ellipse_cb;
|
primary->EllipseCB = gdi_ellipse_cb;
|
||||||
|
|
||||||
update->SurfaceBits = gdi_surface_bits;
|
update->SurfaceBits = gdi_surface_bits;
|
||||||
|
update->SurfaceFrameMarker = gdi_surface_frame_marker;
|
||||||
}
|
}
|
||||||
|
|
||||||
void gdi_init_primary(rdpGdi* gdi)
|
void gdi_init_primary(rdpGdi* gdi)
|
||||||
|
Loading…
Reference in New Issue
Block a user