[ros-diffs] [jgardou] 46911: [WIN32K] - Use DC_vPrepareForBlit, DC_vFinishBlit in GreTextOutputW - So we can get rid of MouseSafetyOnDraw{Start, End} in IntEngMaskBlt

jgardou at svn.reactos.org jgardou at svn.reactos.org
Sun Apr 18 00:48:44 CEST 2010


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/win32/win32k/eng/bitblt.c?rev=46911&r1=46910&r2=46911&view=diff
==============================================================================
--- 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/win32/win32k/objects/freetype.c?rev=46911&r1=46910&r2=46911&view=diff
==============================================================================
--- 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;




More information about the Ros-diffs mailing list