Author: jimtabor
Date: Sun Oct 5 06:26:09 2008
New Revision: 36652
URL:
http://svn.reactos.org/svn/reactos?rev=36652&view=rev
Log:
- Force a recompute when setting map modes.
Modified:
trunk/reactos/dll/win32/gdi32/objects/dc.c
trunk/reactos/subsystems/win32/win32k/objects/coord.c
Modified: trunk/reactos/dll/win32/gdi32/objects/dc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/objects/dc…
==============================================================================
--- trunk/reactos/dll/win32/gdi32/objects/dc.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/gdi32/objects/dc.c [iso-8859-1] Sun Oct 5 06:26:09 2008
@@ -1275,8 +1275,13 @@
return 0;
}
#endif
- if ((Mode == Dc_Attr->iMapMode) && (Mode != MM_ISOTROPIC)) return Mode;
- return GetAndSetDCDWord( hdc, GdiGetSetMapMode, Mode, 0, 0, 0 );
+ // Force change if Isotropic is set for recompute.
+ if ((Mode != Dc_Attr->iMapMode) || (Mode == MM_ISOTROPIC))
+ {
+ Dc_Attr->ulDirty_ &= ~SLOW_WIDTHS;
+ return GetAndSetDCDWord( hdc, GdiGetSetMapMode, Mode, 0, 0, 0 );
+ }
+ return Dc_Attr->iMapMode;
}
/*
Modified: trunk/reactos/subsystems/win32/win32k/objects/coord.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ob…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/coord.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/coord.c [iso-8859-1] Sun Oct 5 06:26:09
2008
@@ -657,12 +657,10 @@
PrevMapMode = Dc_Attr->iMapMode;
- if (MapMode != Dc_Attr->iMapMode || (MapMode != MM_ISOTROPIC && MapMode !=
MM_ANISOTROPIC))
- {
- Dc_Attr->iMapMode = MapMode;
-
- switch (MapMode)
- {
+ Dc_Attr->iMapMode = MapMode;
+
+ switch (MapMode)
+ {
case MM_TEXT:
Dc_Attr->szlWindowExt.cx = 1;
Dc_Attr->szlWindowExt.cy = 1;
@@ -717,7 +715,6 @@
default:
Dc_Attr->iMapMode = PrevMapMode;
PrevMapMode = 0;
- }
DC_UpdateXforms(dc);
}