• Andrew Eikum's avatar
    gdi32: Update metafile world transform immediately in winnt mode. · 083e61fd
    Andrew Eikum authored
    The Chrome browser print function implements their own handling for
    EMR_MODIFYWORLDTRANSFORM which calls ModifyWorldTransform on the HDC
    directly without ever calling PlayEnhMetaFileRecord. In Wine, this
    transformation would get discarded when the callback function returned,
    causing the page to be printed at the wrong scale.
    
    Tests show that the transform is updated immediately during
    PlayEnhMetaFileRecord. In addition, a modified transform persists
    between callbacks until PlayEnhMetaFileRecord is called on a relevant
    type of callback, at which point the transform is reverted before
    playing back the record.
    Signed-off-by: 's avatarAndrew Eikum <aeikum@codeweavers.com>
    Signed-off-by: 's avatarHuw Davies <huw@codeweavers.com>
    Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
    083e61fd
metafile.c 159 KB