Author: fireball
Date: Thu Jan 6 13:17:03 2011
New Revision: 50299
URL:
http://svn.reactos.org/svn/reactos?rev=50299&view=rev
Log:
- Get rid of rcDcRect, kernelmode DC shouldn't care because all coordinate
transformation is done in usermode. rcViewPort remains, and will be changed soon.
Modified:
branches/arwinss/reactos/subsystems/win32/win32k/eng/engsurf.c
branches/arwinss/reactos/subsystems/win32/win32k/gdi/dc.c
branches/arwinss/reactos/subsystems/win32/win32k/gdi/misc.c
branches/arwinss/reactos/subsystems/win32/win32k/gre/bitblt.c
branches/arwinss/reactos/subsystems/win32/win32k/gre/ellipse.c
branches/arwinss/reactos/subsystems/win32/win32k/gre/font.c
branches/arwinss/reactos/subsystems/win32/win32k/gre/lineto.c
branches/arwinss/reactos/subsystems/win32/win32k/gre/rect.c
branches/arwinss/reactos/subsystems/win32/win32k/gre/surfobj.c
branches/arwinss/reactos/subsystems/win32/win32k/include/dc.h
branches/arwinss/reactos/subsystems/win32/win32k/include/swm.h
branches/arwinss/reactos/subsystems/win32/win32k/main/init.c
branches/arwinss/reactos/subsystems/win32/win32k/wine/winesup.c
Modified: branches/arwinss/reactos/subsystems/win32/win32k/eng/engsurf.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/eng/engsurf.c [iso-8859-1]
(original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/eng/engsurf.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -335,6 +335,22 @@
DPRINT1("flHooks: 0x%x\n", flHooks);
+ /* 0x3a5fb for vmware
+ 0x10000 HOOK_ALPHABLEND
+ 0x20000 HOOK_GRADIENTFILL
+ 0x08000 HOOK_TRANSPARENTBLT
+ 0x02000 HOOK_STRETCHBLTROP
+ 0x00400 HOOK_COPYBITS
+ 0x00100 HOOK_LINETO
+ 0x00010 HOOK_PAINT
+ 0x00020 HOOK_STROKEPATH
+ 0x00040 HOOK_FILLPATH
+ 0x00080 HOOK_STROKEANDFILLPATH
+ 0x00001 HOOK_BITBLT
+ 0x00002 HOOK_STRETCHBLT
+ 0x00008 HOOK_TEXTOUT
+ */
+
/* Release the pointer */
SURFACE_UnlockSurface(pSurface);
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gdi/dc.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/gdi/dc.c [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/gdi/dc.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -96,9 +96,8 @@
pNewDC->dclevel.pSurface = SURFACE_ShareLockSurface(hStockBmp);
/* Set DC rectangles */
- pNewDC->rcDcRect.left = 0; pNewDC->rcDcRect.top = 0;
- pNewDC->rcDcRect.right = 1; pNewDC->rcDcRect.bottom = 1;
- pNewDC->rcVport = pNewDC->rcDcRect;
+ pNewDC->rcVport.left = 0; pNewDC->rcVport.top = 0;
+ pNewDC->rcVport.right = 1; pNewDC->rcVport.bottom = 1;
}
else
{
@@ -110,8 +109,6 @@
pNewDC->rcVport.top = 0;
pNewDC->rcVport.right = PrimarySurface.gdiinfo.ulHorzRes;
pNewDC->rcVport.bottom = PrimarySurface.gdiinfo.ulVertRes;
-
- pNewDC->rcDcRect = pNewDC->rcVport;
}
/* Create an empty combined clipping region */
@@ -194,7 +191,6 @@
pDC->rcVport.top = 0;
pDC->rcVport.right = pSurface->SurfObj.sizlBitmap.cx;
pDC->rcVport.bottom = pSurface->SurfObj.sizlBitmap.cy;
- pDC->rcDcRect = pDC->rcVport;
/* Release the DC object */
DC_UnlockDc(pDC);
@@ -458,7 +454,7 @@
PDC pDC;
RECTL pStackBuf[8];
RECTL *pSafeRects = pStackBuf;
- RECTL rcSafeBounds, rcSurface;
+ RECTL rcSafeBounds;
ULONG i;
NTSTATUS Status = STATUS_SUCCESS;
@@ -506,14 +502,14 @@
for (i=0; i<count; i++)
{
RECTL_vOffsetRect(&pSafeRects[i],
- pDC->rcDcRect.left + pDC->rcVport.left,
- pDC->rcDcRect.top + pDC->rcVport.top);
+ pDC->rcVport.left,
+ pDC->rcVport.top);
}
/* Offset bounding rect */
RECTL_vOffsetRect(&rcSafeBounds,
- pDC->rcDcRect.left + pDC->rcVport.left,
- pDC->rcDcRect.top + pDC->rcVport.top);
+ pDC->rcVport.left,
+ pDC->rcVport.top);
/* Delete old clipping region */
if (pDC->Clipping)
@@ -521,24 +517,13 @@
if (count == 0)
{
- /* Set unclipped mode (clip by dc rect) */
+ /* Set unclipped mode (underlying surface rectangle) */
RECTL_vSetRect(&rcSafeBounds,
- pDC->rcDcRect.left,
- pDC->rcDcRect.top,
- pDC->rcDcRect.right,
- pDC->rcDcRect.bottom);
-
- RECTL_vOffsetRect(&rcSafeBounds, pDC->rcVport.left, pDC->rcVport.top);
-
- /* Intersect it with an underlying surface rectangle */
- RECTL_vSetRect(&rcSurface,
0,
0,
pDC->dclevel.pSurface->SurfObj.sizlBitmap.cx,
pDC->dclevel.pSurface->SurfObj.sizlBitmap.cy);
- RECTL_bIntersectRect(&rcSafeBounds, &rcSafeBounds, &rcSurface);
-
/* Set the clipping object */
pDC->Clipping = create_region_from_rects(&rcSafeBounds, 1);
}
@@ -607,10 +592,6 @@
_SEH2_TRY
{
- /* Set DC rectangle */
- if (rcDcRect)
- pDC->rcDcRect = *rcDcRect;
-
/* Set viewport rectangle */
if (rcVport)
pDC->rcVport = *rcVport;
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gdi/misc.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/gdi/misc.c [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/gdi/misc.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -24,10 +24,10 @@
pDC = DC_LockDc(physDev);
/* Add DC origin */
- left += pDC->rcVport.left + pDC->rcDcRect.left;
- top += pDC->rcVport.top + pDC->rcDcRect.top;
- right += pDC->rcVport.left + pDC->rcDcRect.left;
- bottom += pDC->rcVport.top + pDC->rcDcRect.top;
+ left += pDC->rcVport.left;
+ top += pDC->rcVport.top;
+ right += pDC->rcVport.left;
+ bottom += pDC->rcVport.top;
GreEllipse(pDC, left, top, right, bottom);
@@ -60,8 +60,8 @@
}
/* Add DC origin */
- Pt.x = XStart + dc->rcVport.left + dc->rcDcRect.left;
- Pt.y = YStart + dc->rcVport.top + dc->rcDcRect.top;
+ Pt.x = XStart + dc->rcVport.left;
+ Pt.y = YStart + dc->rcVport.top;
/* Call GRE routine */
Ret = GreFloodFill(dc, &Pt, Color, FillType);
@@ -107,10 +107,10 @@
pt[1].x = x2; pt[1].y = y2;
/* Add DC origin */
- pt[0].x += pDC->rcVport.left + pDC->rcDcRect.left;
- pt[0].y += pDC->rcVport.top + pDC->rcDcRect.top;
- pt[1].x += pDC->rcVport.left + pDC->rcDcRect.left;
- pt[1].y += pDC->rcVport.top + pDC->rcDcRect.top;
+ pt[0].x += pDC->rcVport.left;
+ pt[0].y += pDC->rcVport.top;
+ pt[1].x += pDC->rcVport.left;
+ pt[1].y += pDC->rcVport.top;
GreLineTo(&pDC->dclevel.pSurface->SurfObj,
pDC->CombinedClip,
@@ -135,14 +135,14 @@
pDC = DC_LockDc(physDev);
/* Add DC origin */
- left += pDC->rcVport.left + pDC->rcDcRect.left;
- top += pDC->rcVport.top + pDC->rcDcRect.top;
- right += pDC->rcVport.left + pDC->rcDcRect.left;
- bottom += pDC->rcVport.top + pDC->rcDcRect.top;
- xstart += pDC->rcVport.left + pDC->rcDcRect.left;
- ystart += pDC->rcVport.top + pDC->rcDcRect.top;
- xend += pDC->rcVport.left + pDC->rcDcRect.left;
- yend += pDC->rcVport.top + pDC->rcDcRect.top;
+ left += pDC->rcVport.left;
+ top += pDC->rcVport.top;
+ right += pDC->rcVport.left;
+ bottom += pDC->rcVport.top;
+ xstart += pDC->rcVport.left;
+ ystart += pDC->rcVport.top;
+ xend += pDC->rcVport.left;
+ yend += pDC->rcVport.top;
GrepArc(pDC, left, top, right, bottom, xstart, ystart, xend, yend, arc);
@@ -207,8 +207,8 @@
}
/* Calculate bounding rect and offset points data */
- pPoints[0].x += pDC->rcDcRect.left + pDC->rcVport.left;
- pPoints[0].y += pDC->rcDcRect.top + pDC->rcVport.top;
+ pPoints[0].x += pDC->rcVport.left;
+ pPoints[0].y += pDC->rcVport.top;
rcBound.left = pPoints[0].x;
rcBound.right = pPoints[0].x;
@@ -217,8 +217,8 @@
for (i=1; i<count; i++)
{
- pPoints[i].x += pDC->rcDcRect.left + pDC->rcVport.left;
- pPoints[i].y += pDC->rcDcRect.top + pDC->rcVport.top;
+ pPoints[i].x += pDC->rcVport.left;
+ pPoints[i].y += pDC->rcVport.top;
rcBound.left = min(rcBound.left, pPoints[i].x);
rcBound.right = max(rcBound.right, pPoints[i].x);
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gre/bitblt.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/gre/bitblt.c [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/gre/bitblt.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -274,20 +274,20 @@
DestRect.right = XDest+WidthDst;
DestRect.bottom = YDest+HeightDst;
- DestRect.left += pDest->rcVport.left + pDest->rcDcRect.left;
- DestRect.top += pDest->rcVport.top + pDest->rcDcRect.top;
- DestRect.right += pDest->rcVport.left + pDest->rcDcRect.left;
- DestRect.bottom += pDest->rcVport.top + pDest->rcDcRect.top;
+ DestRect.left += pDest->rcVport.left;
+ DestRect.top += pDest->rcVport.top;
+ DestRect.right += pDest->rcVport.left;
+ DestRect.bottom += pDest->rcVport.top;
SrcRect.left = XSrc;
SrcRect.top = YSrc;
SrcRect.right = XSrc+WidthSrc;
SrcRect.bottom = YSrc+HeightSrc;
- SrcRect.left += pSrc->rcVport.left + pSrc->rcDcRect.left;
- SrcRect.top += pSrc->rcVport.top + pSrc->rcDcRect.top;
- SrcRect.right += pSrc->rcVport.left + pSrc->rcDcRect.left;
- SrcRect.bottom += pSrc->rcVport.top + pSrc->rcDcRect.top;
+ SrcRect.left += pSrc->rcVport.left;
+ SrcRect.top += pSrc->rcVport.top;
+ SrcRect.right += pSrc->rcVport.left;
+ SrcRect.bottom += pSrc->rcVport.top;
/* Create the XLATEOBJ. */
EXLATEOBJ_vInitXlateFromDCs(&exlo, pSrc, pDest);
@@ -324,18 +324,18 @@
DestRect.right = XDest+Width;
DestRect.bottom = YDest+Height;
- DestRect.left += pDest->rcVport.left + pDest->rcDcRect.left;
- DestRect.top += pDest->rcVport.top + pDest->rcDcRect.top;
- DestRect.right += pDest->rcVport.left + pDest->rcDcRect.left;
- DestRect.bottom += pDest->rcVport.top + pDest->rcDcRect.top;
+ DestRect.left += pDest->rcVport.left;
+ DestRect.top += pDest->rcVport.top;
+ DestRect.right += pDest->rcVport.left;
+ DestRect.bottom += pDest->rcVport.top;
SourcePoint.x = XSrc;
SourcePoint.y = YSrc;
if (pSrc)
{
- SourcePoint.x += pSrc->rcDcRect.left + pSrc->rcVport.left;
- SourcePoint.y += pSrc->rcDcRect.top + pSrc->rcVport.top;
+ SourcePoint.x += pSrc->rcVport.left;
+ SourcePoint.y += pSrc->rcVport.top;
}
/* Create the XLATEOBJ. */
@@ -345,8 +345,8 @@
XlateObj = &exlo.xlo;
}
- BrushOrigin.x = pDest->dclevel.ptlBrushOrigin.x + pDest->rcDcRect.left;
- BrushOrigin.y = pDest->dclevel.ptlBrushOrigin.y + pDest->rcDcRect.top;
+ BrushOrigin.x = pDest->dclevel.ptlBrushOrigin.x;
+ BrushOrigin.y = pDest->dclevel.ptlBrushOrigin.y;
/* Perform the bitblt operation */
bRet = GrepBitBltEx(
@@ -406,13 +406,13 @@
DestRect.bottom = YLeft + 1;
}
- DestRect.left += pDC->rcVport.left + pDC->rcDcRect.left;
- DestRect.top += pDC->rcVport.top + pDC->rcDcRect.top;
- DestRect.right += pDC->rcVport.left + pDC->rcDcRect.left;
- DestRect.bottom += pDC->rcVport.top + pDC->rcDcRect.top;
-
- BrushOrigin.x = pDC->dclevel.ptlBrushOrigin.x + pDC->rcDcRect.left;
- BrushOrigin.y = pDC->dclevel.ptlBrushOrigin.y + pDC->rcDcRect.top;
+ DestRect.left += pDC->rcVport.left;
+ DestRect.top += pDC->rcVport.top;
+ DestRect.right += pDC->rcVport.left;
+ DestRect.bottom += pDC->rcVport.top;
+
+ BrushOrigin.x = pDC->dclevel.ptlBrushOrigin.x;
+ BrushOrigin.y = pDC->dclevel.ptlBrushOrigin.y;
bRet = GrepBitBltEx(
&pDC->dclevel.pSurface->SurfObj,
@@ -469,10 +469,10 @@
DestRect.right = XOriginDest+WidthDest;
DestRect.bottom = YOriginDest+HeightDest;
- DestRect.left += DCDest->rcVport.left + DCDest->rcDcRect.left;
- DestRect.top += DCDest->rcVport.top + DCDest->rcDcRect.top;
- DestRect.right += DCDest->rcVport.left + DCDest->rcDcRect.left;
- DestRect.bottom += DCDest->rcVport.top + DCDest->rcDcRect.top;
+ DestRect.left += DCDest->rcVport.left;
+ DestRect.top += DCDest->rcVport.top;
+ DestRect.right += DCDest->rcVport.left;
+ DestRect.bottom += DCDest->rcVport.top;
SourceRect.left = XOriginSrc;
SourceRect.top = YOriginSrc;
@@ -481,14 +481,14 @@
if (UsesSource)
{
- SourceRect.left += DCSrc->rcVport.left + DCSrc->rcDcRect.left;
- SourceRect.top += DCSrc->rcVport.top + DCSrc->rcDcRect.top;
- SourceRect.right += DCSrc->rcVport.left + DCSrc->rcDcRect.left;
- SourceRect.bottom += DCSrc->rcVport.top + DCSrc->rcDcRect.top;
- }
-
- BrushOrigin.x = DCDest->dclevel.ptlBrushOrigin.x + DCDest->rcDcRect.left;
- BrushOrigin.y = DCDest->dclevel.ptlBrushOrigin.y + DCDest->rcDcRect.top;
+ SourceRect.left += DCSrc->rcVport.left;
+ SourceRect.top += DCSrc->rcVport.top;
+ SourceRect.right += DCSrc->rcVport.left;
+ SourceRect.bottom += DCSrc->rcVport.top;
+ }
+
+ BrushOrigin.x = DCDest->dclevel.ptlBrushOrigin.x;
+ BrushOrigin.y = DCDest->dclevel.ptlBrushOrigin.y;
/* Determine surfaces to be used in the bitblt */
BitmapDest = DCDest->dclevel.pSurface;
@@ -1125,8 +1125,8 @@
rcDest.left = XDest;
rcDest.top = YDest;
- rcDest.left += pDC->rcVport.left + pDC->rcDcRect.left;
- rcDest.top += pDC->rcVport.top + pDC->rcDcRect.top;
+ rcDest.left += pDC->rcVport.left;
+ rcDest.top += pDC->rcVport.top;
rcDest.right = rcDest.left + Width;
rcDest.bottom = rcDest.top + Height;
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gre/ellipse.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/gre/ellipse.c [iso-8859-1]
(original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/gre/ellipse.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -64,8 +64,8 @@
DPRINT("Ellipse 2: XLeft: %d, YLeft: %d, Width: %d, Height: %d\n",
CenterX - RadiusX, CenterY + RadiusY, RadiusX*2, RadiusY*2);
- BrushOrigin.x = dc->dclevel.ptlBrushOrigin.x + dc->rcDcRect.left;
- BrushOrigin.y = dc->dclevel.ptlBrushOrigin.y + dc->rcDcRect.top;
+ BrushOrigin.x = dc->dclevel.ptlBrushOrigin.x;
+ BrushOrigin.y = dc->dclevel.ptlBrushOrigin.y;
/* Draw filled part */
if (dc->dclevel.pbrFill && !(dc->dclevel.pbrFill->flAttrs &
GDIBRUSH_IS_NULL))
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gre/font.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/gre/font.c [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/gre/font.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -225,8 +225,8 @@
for(idx = 0; idx < count; idx++) {
sharp_glyph_fn(pDC,
- pDC->rcDcRect.left + pDC->rcVport.left + x + offset.x,
- pDC->rcDcRect.top + pDC->rcVport.top + y + offset.y,
+ pDC->rcVport.left + x + offset.x,
+ pDC->rcVport.top + y + offset.y,
formatEntry->bitmaps[wstr[idx]],
&formatEntry->gis[wstr[idx]],
&pTextPen);
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gre/lineto.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/gre/lineto.c [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/gre/lineto.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -115,10 +115,10 @@
Mix = ROP2_TO_MIX(R2_COPYPEN);/*pdcattr->jROP2*/
for (i=0; i<count-1; i++)
{
- ptLine[0].x = ptPoints[i].x + pDC->rcDcRect.left + pDC->rcVport.left;
- ptLine[0].y = ptPoints[i].y + pDC->rcDcRect.top + pDC->rcVport.top;
- ptLine[1].x = ptPoints[i+1].x + pDC->rcDcRect.left +
pDC->rcVport.left;
- ptLine[1].y = ptPoints[i+1].y + pDC->rcDcRect.top + pDC->rcVport.top;
+ ptLine[0].x = ptPoints[i].x + pDC->rcVport.left;
+ ptLine[0].y = ptPoints[i].y + pDC->rcVport.top;
+ ptLine[1].x = ptPoints[i+1].x + pDC->rcVport.left;
+ ptLine[1].y = ptPoints[i+1].y + pDC->rcVport.top;
DestRect.left = min(ptLine[0].x, ptLine[1].x);
DestRect.top = min(ptLine[0].y, ptLine[1].y);
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gre/rect.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/gre/rect.c [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/gre/rect.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -32,13 +32,13 @@
MIX Mix;
POINTL BrushOrigin;
- DestRect.left = LeftRect + pDC->rcDcRect.left + pDC->rcVport.left;
- DestRect.right = RightRect + pDC->rcDcRect.left + pDC->rcVport.left;
- DestRect.top = TopRect + pDC->rcDcRect.top + pDC->rcVport.top;
- DestRect.bottom = BottomRect + pDC->rcDcRect.top + pDC->rcVport.top;
-
- BrushOrigin.x = pDC->dclevel.ptlBrushOrigin.x + pDC->rcDcRect.left;
- BrushOrigin.y = pDC->dclevel.ptlBrushOrigin.y + pDC->rcDcRect.top;
+ DestRect.left = LeftRect + pDC->rcVport.left;
+ DestRect.right = RightRect + pDC->rcVport.left;
+ DestRect.top = TopRect + pDC->rcVport.top;
+ DestRect.bottom = BottomRect + pDC->rcVport.top;
+
+ BrushOrigin.x = pDC->dclevel.ptlBrushOrigin.x;
+ BrushOrigin.y = pDC->dclevel.ptlBrushOrigin.y;
/* Draw brush-based rectangle */
if (pDC->dclevel.pbrFill)
@@ -107,8 +107,8 @@
INT i;
POINTL BrushOrigin;
- BrushOrigin.x = pDC->dclevel.ptlBrushOrigin.x + pDC->rcDcRect.left;
- BrushOrigin.y = pDC->dclevel.ptlBrushOrigin.y + pDC->rcDcRect.top;
+ BrushOrigin.x = pDC->dclevel.ptlBrushOrigin.x;
+ BrushOrigin.y = pDC->dclevel.ptlBrushOrigin.y;
/* Draw brush-based polygon */
if (pDC->dclevel.pbrFill)
Modified: branches/arwinss/reactos/subsystems/win32/win32k/gre/surfobj.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/gre/surfobj.c [iso-8859-1]
(original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/gre/surfobj.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -825,8 +825,8 @@
SURFOBJ *pso;
/* Offset coordinate by DC origin */
- x += pDC->rcVport.left + pDC->rcDcRect.left;
- y += pDC->rcVport.top + pDC->rcDcRect.top;
+ x += pDC->rcVport.left;
+ y += pDC->rcVport.top;
/* If point is outside the combined clipping region - return error */
if (!RECTL_bPointInRect(&pDC->CombinedClip->rclBounds, x, y))
Modified: branches/arwinss/reactos/subsystems/win32/win32k/include/dc.h
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/include/dc.h [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/include/dc.h [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -29,7 +29,6 @@
EBRUSHOBJ eboLine;
/* Origins and extents */
- RECT rcDcRect; /* Relative to Vport */
RECT rcVport;
/* Combined clipping region */
Modified: branches/arwinss/reactos/subsystems/win32/win32k/include/swm.h
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/include/swm.h [iso-8859-1]
(original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/include/swm.h [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -14,6 +14,7 @@
VOID NTAPI SwmInitialize();
+VOID NTAPI GrContextInit();
PSWM_WINDOW NTAPI SwmFindByHwnd(HWND hWnd);
VOID NTAPI SwmAcquire(VOID);
VOID NTAPI SwmRelease(VOID);
Modified: branches/arwinss/reactos/subsystems/win32/win32k/main/init.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/main/init.c [iso-8859-1] (original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/main/init.c [iso-8859-1] Thu Jan 6
13:17:03 2011
@@ -382,6 +382,7 @@
/* Initialize window manager */
SwmInitialize();
-
- return STATUS_SUCCESS;
-}
+ //GrContextInit();
+
+ return STATUS_SUCCESS;
+}
Modified: branches/arwinss/reactos/subsystems/win32/win32k/wine/winesup.c
URL:
http://svn.reactos.org/svn/reactos/branches/arwinss/reactos/subsystems/win3…
==============================================================================
--- branches/arwinss/reactos/subsystems/win32/win32k/wine/winesup.c [iso-8859-1]
(original)
+++ branches/arwinss/reactos/subsystems/win32/win32k/wine/winesup.c [iso-8859-1] Thu Jan
6 13:17:03 2011
@@ -140,6 +140,24 @@
}
return NewPtr;
+}
+
+char * __cdecl GdStrDup(const char *src)
+{
+ char *newstr = ExAllocatePool(PagedPool, strlen(src));
+ strcpy(newstr, src);
+ return newstr;
+}
+
+void *GdCalloc(size_t num, size_t size)
+{
+ PVOID Buf;
+ ULONG TotalSize = num * size;
+
+ Buf = ExAllocatePool(PagedPool, TotalSize);
+ RtlZeroMemory(Buf, TotalSize);
+
+ return Buf;
}
#define DIFFTIME 0x19db1ded53e8000ULL