Commit 32057bf1 authored by Alexandre Julliard's avatar Alexandre Julliard

gdi32: Don't paint the text rectangle in transparent mode unless a rectangle is…

gdi32: Don't paint the text rectangle in transparent mode unless a rectangle is explicitly specified.
parent 903803b5
...@@ -2198,7 +2198,7 @@ BOOL WINAPI ExtTextOutW( HDC hdc, INT x, INT y, UINT flags, ...@@ -2198,7 +2198,7 @@ BOOL WINAPI ExtTextOutW( HDC hdc, INT x, INT y, UINT flags,
if(rc.top > rc.bottom) {INT tmp = rc.top; rc.top = rc.bottom; rc.bottom = tmp;} if(rc.top > rc.bottom) {INT tmp = rc.top; rc.top = rc.bottom; rc.bottom = tmp;}
} }
if (flags & ETO_OPAQUE) if (lprect && (flags & ETO_OPAQUE))
physdev->funcs->pExtTextOut( physdev, 0, 0, ETO_OPAQUE, &rc, NULL, 0, NULL ); physdev->funcs->pExtTextOut( physdev, 0, 0, ETO_OPAQUE, &rc, NULL, 0, NULL );
if(count == 0) if(count == 0)
...@@ -2354,7 +2354,8 @@ BOOL WINAPI ExtTextOutW( HDC hdc, INT x, INT y, UINT flags, ...@@ -2354,7 +2354,8 @@ BOOL WINAPI ExtTextOutW( HDC hdc, INT x, INT y, UINT flags,
{ {
if(!((flags & ETO_CLIPPED) && (flags & ETO_OPAQUE))) if(!((flags & ETO_CLIPPED) && (flags & ETO_OPAQUE)))
{ {
if(!(flags & ETO_OPAQUE) || x < rc.left || x + width.x >= rc.right || if(!(flags & ETO_OPAQUE) || !lprect ||
x < rc.left || x + width.x >= rc.right ||
y - tm.tmAscent < rc.top || y + tm.tmDescent >= rc.bottom) y - tm.tmAscent < rc.top || y + tm.tmDescent >= rc.bottom)
{ {
RECT text_box; RECT text_box;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment