Huw Davies : wineandroid: Use logical co-ords to call GdiAlphaBlend().
Alexandre Julliard
julliard at winehq.org
Wed Jun 28 15:10:25 CDT 2017
Module: wine
Branch: master
Commit: 99069934f735fe57978b011f8a57792638de5047
URL: http://source.winehq.org/git/wine.git/?a=commit;h=99069934f735fe57978b011f8a57792638de5047
Author: Huw Davies <huw at codeweavers.com>
Date: Tue Jun 27 16:40:38 2017 +0100
wineandroid: Use logical co-ords to call GdiAlphaBlend().
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/wineandroid.drv/window.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/dlls/wineandroid.drv/window.c b/dlls/wineandroid.drv/window.c
index f7a13df..ff8b1e0 100644
--- a/dlls/wineandroid.drv/window.c
+++ b/dlls/wineandroid.drv/window.c
@@ -1247,7 +1247,7 @@ BOOL CDECL ANDROID_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO
char buffer[FIELD_OFFSET( BITMAPINFO, bmiColors[256] )];
BITMAPINFO *bmi = (BITMAPINFO *)buffer;
void *src_bits, *dst_bits;
- RECT rect;
+ RECT rect, src_rect;
HDC hdc = 0;
HBITMAP dib;
BOOL ret = FALSE;
@@ -1297,11 +1297,13 @@ BOOL CDECL ANDROID_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDWINDOWINFO
memcpy( src_bits, dst_bits, bmi->bmiHeader.biSizeImage );
PatBlt( hdc, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, BLACKNESS );
}
+ src_rect = rect;
+ if (info->pptSrc) OffsetRect( &src_rect, info->pptSrc->x, info->pptSrc->y );
+ DPtoLP( info->hdcSrc, (POINT *)&src_rect, 2 );
+
ret = GdiAlphaBlend( hdc, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top,
- info->hdcSrc,
- rect.left + (info->pptSrc ? info->pptSrc->x : 0),
- rect.top + (info->pptSrc ? info->pptSrc->y : 0),
- rect.right - rect.left, rect.bottom - rect.top,
+ info->hdcSrc, src_rect.left, src_rect.top,
+ src_rect.right - src_rect.left, src_rect.bottom - src_rect.top,
(info->dwFlags & ULW_ALPHA) ? *info->pblend : blend );
if (ret)
{
More information about the wine-cvs
mailing list