[0.4.13][WIN32SS][NTUSER][USER32] Fix menu checkmarks (#2009)
authorKatayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
Fri, 1 Nov 2019 00:52:18 +0000 (09:52 +0900)
committerJoachim Henze <Joachim.Henze@reactos.org>
Fri, 1 Nov 2019 01:12:03 +0000 (02:12 +0100)
This will fix regression CORE-16470
"Black squares in menubar of Abiword 2.6.8"

This is a partial revert of the guilty rev 0.4.13-dev-702-g
1e91a1690d554c771d703f12416321bbe4c5b53f
- Don't change background mode.

And is an addendum to CORE-13211.

test results LGTM:
https://reactos.org/testman/compare.php?ids=69593,69596 VBox
https://reactos.org/testman/compare.php?ids=69594,69597 KVM

fix cherry picked from commit 0.4.14-dev-186-g
b3033b81a4256cd3482b36acbd60870ef1ddb23d

win32ss/user/ntuser/draw.c
win32ss/user/user32/windows/draw.c

index 4b30a32..eb97e1e 100644 (file)
@@ -955,7 +955,7 @@ BOOL FASTCALL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
     HFONT hFont, hOldFont;
     WCHAR Symbol;
     RECT myr;
-    INT cxy, nBkMode;
+    INT cxy;
     cxy = UITOOLS_MakeSquareRect(r, &myr);
     switch(uFlags & 0xff)
     {
@@ -1014,9 +1014,7 @@ BOOL FASTCALL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
        IntGdiSetTextColor(dc, IntGetSysColor((uFlags & DFCS_INACTIVE) ? COLOR_BTNSHADOW : COLOR_BTNTEXT));
     }
     /* draw selected symbol */
-    nBkMode = IntGdiSetBkMode(dc, TRANSPARENT);
     GreTextOutW(dc, myr.left, myr.top, &Symbol, 1);
-    IntGdiSetBkMode(dc, nBkMode);
     /* restore previous settings */
     NtGdiSelectFont(dc, hOldFont);
     GreDeleteObject(hFont);
index 65bacc8..62798c8 100644 (file)
@@ -977,7 +977,7 @@ static BOOL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
     HFONT hFont, hOldFont;
     TCHAR Symbol;
     RECT myr;
-    INT cxy, nBkMode;
+    INT cxy;
     cxy = UITOOLS_MakeSquareRect(r, &myr);
     switch(uFlags & 0xff)
     {
@@ -1034,9 +1034,7 @@ static BOOL UITOOLS95_DrawFrameMenu(HDC dc, LPRECT r, UINT uFlags)
        SetTextColor(dc, GetSysColor((uFlags & DFCS_INACTIVE) ? COLOR_BTNSHADOW : COLOR_BTNTEXT));
     }
     /* draw selected symbol */
-    nBkMode = SetBkMode(dc, TRANSPARENT);
     TextOut(dc, myr.left, myr.top, &Symbol, 1);
-    SetBkMode(dc, nBkMode);
     /* restore previous settings */
     SelectObject(dc, hOldFont);
     DeleteObject(hFont);