Author: jgardou Date: Sun Apr 18 00:48:44 2010 New Revision: 46911
URL: http://svn.reactos.org/svn/reactos?rev=46911&view=rev Log: [WIN32K] - Use DC_vPrepareForBlit, DC_vFinishBlit in GreTextOutputW - So we can get rid of MouseSafetyOnDraw{Start,End} in IntEngMaskBlt
Modified: branches/reactos-yarotows/subsystems/win32/win32k/eng/bitblt.c branches/reactos-yarotows/subsystems/win32/win32k/objects/freetype.c
Modified: branches/reactos-yarotows/subsystems/win32/win32k/eng/bitblt.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/subsystems/win3... ============================================================================== --- branches/reactos-yarotows/subsystems/win32/win32k/eng/bitblt.c [iso-8859-1] (original) +++ branches/reactos-yarotows/subsystems/win32/win32k/eng/bitblt.c [iso-8859-1] Sun Apr 18 00:48:44 2010 @@ -973,8 +973,6 @@ psurfDest = CONTAINING_RECORD(psoDest, SURFACE, SurfObj);
SURFACE_LockBitmapBits(psurfDest); - MouseSafetyOnDrawStart(psoDest, OutputRect.left, OutputRect.top, - OutputRect.right, OutputRect.bottom);
/* Dummy BitBlt to let driver know that it should flush its changes. This should really be done using a call to DrvSynchronizeSurface, @@ -991,7 +989,6 @@ DestRect, pptlMask, pptlMask, pbo, BrushOrigin, R4_NOOP, FALSE);
- MouseSafetyOnDrawEnd(psoDest); SURFACE_UnlockBitmapBits(psurfDest);
return ret;
Modified: branches/reactos-yarotows/subsystems/win32/win32k/objects/freetype.c URL: http://svn.reactos.org/svn/reactos/branches/reactos-yarotows/subsystems/win3... ============================================================================== --- branches/reactos-yarotows/subsystems/win32/win32k/objects/freetype.c [iso-8859-1] (original) +++ branches/reactos-yarotows/subsystems/win32/win32k/objects/freetype.c [iso-8859-1] Sun Apr 18 00:48:44 2010 @@ -3187,6 +3187,9 @@ return TRUE; }
+ /* FIXME : This is ugly, but this function must be rewritten anyway */ + DC_vPrepareDCsForBlit(dc, dc->rosdc.CombinedClip->rclBounds, NULL, DestRect); + pdcattr = dc->pdcattr;
if (pdcattr->ulDirty_ & DIRTY_TEXT) @@ -3613,6 +3616,7 @@ if (TextObj != NULL) TEXTOBJ_UnlockText(TextObj); good: + DC_vFinishBlit(dc, NULL); DC_UnlockDc( dc );
return TRUE; @@ -3623,6 +3627,7 @@ fail: if (TextObj != NULL) TEXTOBJ_UnlockText(TextObj); + DC_vFinishBlit(dc, NULL); DC_UnlockDc(dc);
return FALSE;