Commit Graph

2381 Commits (master)

Author SHA1 Message Date
Huw Davies 0b66af673e gdi32: Use the correct type for the final parameter of FSOpenResourceFile().
This is SInt16 for 32-bit, but int for 64-bit.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-31 08:26:19 +02:00
Alexandre Julliard 4a902de213 gdi32: Make GDI driver functions cdecl.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-06 21:47:58 +02:00
Ken Thomases 7c2d5a7c25 gdi32: Also accept "\\.\DISPLAY<n>" devices names with <n> other than 1 as display devices.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-25 13:22:17 +02:00
Zhiyi Zhang 955549c4ca gdi32: Implement D3DKMTDestroyDevice.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-06 13:08:45 +02:00
Zhiyi Zhang 733a92df4b gdi32: Implement D3DKMTCreateDevice.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-06 13:08:33 +02:00
Zhiyi Zhang 344556f7d5 gdi32: Implement D3DKMTCloseAdapter.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-06 13:08:12 +02:00
Zhiyi Zhang d37030528e gdi32: Implement D3DKMTOpenAdapterFromGdiDisplayName.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-06 13:08:06 +02:00
Zhiyi Zhang 4f201cfcc9 gdi32/tests: Add D3DKMTCheckOcclusion tests.
Mostly to show that D3DKMTCheckOcclusion is mainly composed of
ownership checks rather than actually window occlusion. Also
composition status doesn't affect its behavior despite MSDN
say so.

Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-28 12:06:46 +02:00
Zhiyi Zhang bf3e32b5b0 gdi32/tests: Add D3DKMTSetVidPnSourceOwner tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 12:30:04 +02:00
Zhiyi Zhang af7f3ecd3b gdi32/tests: Add D3DKMTCheckVidPnExclusiveOwnership tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 12:30:04 +02:00
Zhiyi Zhang 13f649fde5 gdi32/tests: Add D3DKMTDestroyDevice tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 12:30:04 +02:00
Zhiyi Zhang c7e4e45761 gdi32/tests: Add D3DKMTCreateDevice tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 12:30:04 +02:00
Zhiyi Zhang 5fdf401fc1 gdi32/tests: Add D3DKMTCloseAdapter tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 12:30:04 +02:00
Zhiyi Zhang b6072314e5 gdi32/tests: Add D3DKMTOpenAdapterFromHdc tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 12:30:04 +02:00
Zhiyi Zhang 012d9bbc23 gdi32/tests: Add D3DKMTOpenAdapterFromGdiDisplayName tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 12:30:04 +02:00
Alexandre Julliard c52b2f1284 make_unicode: Remove duplicate DECLSPEC_HIDDEN.
Spotted by Matteo Bruni.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 11:25:38 +02:00
Fabian Maurer 9bc6f004ce gdi32: CreatePolyPolygonRgn() returns an empty region when the area is empty.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46655
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 19:16:05 +02:00
Alexandre Julliard ef07087f47 gdi32: Use the same BiDi direction table as usp10.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 19:16:05 +02:00
Alexandre Julliard 333e6b3c69 make_unicode: Avoid including wine/unicode.h in generated files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-22 19:16:05 +02:00
Nikolay Sivov 13364151a4 tools: Update to Unicode 12.0.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Michael Stefaniuc 89327da738 gdi32/tests: Avoid the comma operator.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-10 11:13:37 +02:00
Akihiro Sagawa eca601d7bb gdi32/tests: Add tests for GetCharWidthInfo().
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-09 15:46:03 +02:00
Akihiro Sagawa 1128587fd2 gdi32: Implement GetCharWidthInfo().
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-09 15:46:03 +02:00
Piotr Caban 541c8d271e gdi32: Don't use strcasecmp.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-09 15:46:03 +02:00
Alexandre Julliard 3d6febc997 include: Get rid of the DPRINTF() macro.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 19:34:44 +02:00
Michael Stefaniuc fe7dcc2908 gdi32: Remove unused return value of init_system_links().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 23:52:59 +01:00
Louis Lenders d150cc192e gdi32: Add D3DKMTCloseAdapter() stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46571
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 17:43:16 +01:00
Francois Gouget 5f79b5f6e5 gdi32: Fix the FreeType case in a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-12 20:32:41 +01:00
Byeongsik Jeon c666a45560 gdi32: Add a workaround for Freetype < 2.8.1 using v40 FT_LOAD_TARGET_MONO.
Freetype < 2.8.1 v40 has incorrect advance widths and rendering issues.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=41639
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-19 13:10:22 +01:00
Dmitry Timoshkov c4a5485295 wineps.drv: PostScript header should be written by StartDoc instead of StartPage.
Otherwise a being created file has wrong signature if an application
directly injects PostScript code. This patch fixes printing from
Adobe PageMaker.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-13 19:45:24 +01:00
Dmitry Timoshkov 7338641e89 wineps.drv: Add stubs for escapes required by Adobe PageMaker.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-13 19:45:24 +01:00
Sergio Gómez Del Real c20285218b gdi32/dibdrv: Clip segment points to dib rect in wide_line_segment().
Signed-off-by: Sergio Gómez Del Real <sdelreal@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Byeongsik Jeon 9d92acaa56 gdi32: Add a helper macro for FreeType version check.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 12:11:29 +01:00
Byeongsik Jeon 17080cc1f2 gdi32: Add helper functions to get GGO glyph bitmap.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 12:11:26 +01:00
Byeongsik Jeon fe5f0ebf0c gdi32: Add helper functions to compute the glyph metrics.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 12:11:24 +01:00
Byeongsik Jeon 6c32ce64e9 gdi32: Add helper functions to cache the glyph metrics.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 12:11:21 +01:00
Byeongsik Jeon fcfbb00cb1 gdi32: Add a helper function to get the transform matrices.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 16:33:35 +01:00
Byeongsik Jeon 40a7c5a8a8 gdi32: Fix vertical rotation.
Missed from cf891b04a0.

Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-07 16:33:24 +01:00
Michael Stefaniuc 0aea7fc915 gdi32: Avoid TRUE : FALSE conditional expressions.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 10:48:04 +01:00
Huw Davies 870db3b25a gdi32/tests: Korean and Chinese machines may use MS Shell Dlg as their default GUI font.
This is an extension of commit c81ff0f8cf.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=35573
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-14 17:25:49 +01:00
Nikolay Sivov a67120f06d gdi32/tests: Fix copy-paste issue with test message (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-07 10:47:20 -06:00
Nikolay Sivov dfcd8f85f1 gdi32: Fix fontconfig objects leak (Valgrind).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-24 14:54:59 +01:00
Huw Davies f59755755e gdi32: Try to update the default families with fonts that exist.
Based on a patch by Akihiro Sagawa.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46285
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46244
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-20 15:34:01 +01:00
Daniel Lehman 3b8fde3f08 gdi32: Fix memory leak (Valgrind).
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-20 15:34:01 +01:00
Huw Davies 54e3bf12cd gdi32: Fix building with versions of fontconfig < 2.11.0.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46296
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-19 14:31:17 +01:00
Dmitry Timoshkov 7933f7beef gdi32: Trace full contents of DOCINFO in StartDoc.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-10 12:21:09 +01:00
Dmitry Timoshkov 9ad2d036aa gdi32/tests: Add a simple test for printing to a PostScript device.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-10 12:21:07 +01:00
Nikolay Sivov cfcfcadfcb gdi32: Fix function prototype when building without freetype.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 10:56:25 +01:00
Alex Henrie 235063d862 gdi32: Turn variable 'fake_nameW' into a static constant.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-03 10:49:01 +01:00
Dmitry Timoshkov 007414ec65 gdi32/tests: Explicitly test BeginPath() return value in the metafile path tests.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 15:46:19 +01:00
Dmitry Timoshkov 3e9da621a2 gdi32: ExtTextOut on a path with bitmap font selected shouldn't fail.
This just leads to empty path generated.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 15:46:12 +01:00
Dmitry Timoshkov 1886ef1419 gdi32/tests: Add some additional tests for ExtExtOut on a path for an EMF DC.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 15:46:04 +01:00
Dmitry Timoshkov 57c44885e5 gdi32: Improve detection of symbol charset for old truetype fonts.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=33117
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 15:45:43 +01:00
Akihiro Sagawa 11ab9ff7b3 gdi32: Try Fontconfig substitutions when the font face is missing.
This improves font selection. With this patch, we can choose a decent
font family by Fontconfig.

Otherwise, Wine chooses some fonts based on supported charset, e.g. Droid
Sans Fallback. Droid Sans Fallback supports various scripts including
Japanese. However, as it's a fallback font, it doesn't have Latin alphabet
glyphs. If the font is chosen, typically Japanese Ubuntu environment, users
see a lot of squares instead of Latin alphabets.

This patch asks Fontconfig for the best font for the current locale. If the
font is returned and matches requested charset, the font is used. If failure,
it fallbacks to existing procedure.

Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-29 10:04:49 +01:00
Nikolay Sivov 2d6a23bef6 gdi32: Implement GetFontFileData().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 20:33:16 +01:00
Nikolay Sivov 93eca9e919 gdi32: Set data size for fonts created from memory.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 20:10:57 +01:00
Nikolay Sivov 03ccce70b5 gdi32: Improve GetFontFileInfo() compatibility.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 20:10:52 +01:00
Nikolay Sivov 65ef40bff7 gdi32/tests: Run memory resource font test in a child process.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-21 20:10:21 +01:00
Byeongsik Jeon 590c8b82c8 gdi32: Fix the linked child font bold, italic style correctly.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00
Byeongsik Jeon 7da7930a10 gdi32: Specify the suitable hinting flags explicitly.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=41639
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-13 10:43:43 +01:00
Nikolay Sivov ce3e220c26 gdi32/tests: Fix some test failures on newer Win10 releases.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-13 10:43:40 +01:00
Byeongsik Jeon 2b52474fdd gdi32: Respect the FC_ANTIALIAS setting for the FC_RGBA_NONE case.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-29 14:49:25 +01:00
Byeongsik Jeon af90ab3259 gdi32: Remove the code that doesn't work as intended around FcFontList().
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-29 14:49:24 +01:00
Byeongsik Jeon 2fe859b8ef gdi32: Support other settings for obtaining the default_aa_flags value.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-29 11:30:06 +01:00
André Hentschel e64cd493d2 gdi32: Spelling fixes in a comment.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-23 15:28:58 +02:00
Byeongsik Jeon 649dd1292d gdi32: Support the gamma correction for the subpixel rendering.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-22 22:36:43 +02:00
Akihiro Sagawa 9f458df88c gdi32: Adjust destination coordinates in some special cases.
When the source rectangle needs to flip and it doesn't fit in the
source device area, the destination image is flipped but the
destination area isn't flipped.  GdiAlphaBlend doesn't support
mirroring, the above isn't applicable.

Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 13:55:14 +02:00
Akihiro Sagawa 566b92320c gdi32: Fix negative width/height handling in stretch bitblt family.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 13:55:05 +02:00
Akihiro Sagawa 71c9a8f3ca gdi32/tests: Add more stretch bitblt tests.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-15 13:54:46 +02:00
Akihiro Sagawa bdfbd32e85 gdi32: Use the helper function to order the points of a rectangle.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-12 09:48:29 +02:00
Byeongsik Jeon fe6d35f3cb gdi32: Move the 'if' branch out of the loop.
Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-10 17:43:32 +02:00
Byeongsik Jeon 11d68d05a7 gdi32: Remove unnecessary operations.
The rgb part works from text rendering to alpha value.
The '24' part is an unnecessary operation.

Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-10 17:43:20 +02:00
Byeongsik Jeon 66e446c5ec gdi32: Improves the subpixel rendering availability for FreeType 2.8.1+.
FreeType 2.8.1+ implemented its own subpixel rendering.
So FT_Err_Uniplemented_Feature check is not the reliable way.

Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-09 12:38:22 +02:00
Michael Stefaniuc fb7a8d92fd gdi32: Use the ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-08 12:46:18 +02:00
Michael Stefaniuc 02b7f00a11 gdi32: Avoid a variable holding an ARRAY_SIZE.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-08 12:46:14 +02:00
Alex Henrie 47ab490427 gdi32: Avoid using GCC's typeof extension.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-21 23:58:56 +02:00
Alexandre Julliard d99f682118 gdi32: Don't return screen resolution on printer devices.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-05 19:52:31 +02:00
Alexandre Julliard d0579649c1 gdi32: Fall back to GetSystemMetrics() for the virtual desktop size.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 12:57:00 +02:00
Alexandre Julliard 6d395fcca4 gdi32: Fall back to GetSystemMetrics() for the screen size.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-22 11:46:10 +02:00
Daniel Lehman e976e179ae gdi32: Update edgetable limits with top and bottom.
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-18 14:13:43 +02:00
Daniel Lehman 418514820f gdi32/tests: Add test for clipped polygon.
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-18 14:13:43 +02:00
Michael Müller 96721e4291 gdi32: Treat lpResults as optional in GetCharacterPlacement.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-16 10:04:09 +02:00
Alexandre Julliard 766287ad6a server: Return the surface rect as top clipping rect.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-11 15:45:11 +02:00
Alex Henrie 478a3d64ef gdi32: Add DECLSPEC_HOTPATCH to GetDIBits.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45199
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 19:44:27 +02:00
Nikolay Sivov d4eeb162bb tools: Update to Unicode 11.0.0.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-03 12:01:40 +02:00
Michael Stefaniuc 314a276f19 gdi32/tests: Use the available ARRAY_SIZE() macro.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-26 13:29:10 +02:00
Dmitry Timoshkov c1f742021f gdi32: For symbol fonts check whether the char has been converted to Unicode.
This means that Unicode versions of text functions can use the result
of a A->W conversion under CP_ACP.

It's required so that the following will work:
  hfont = CreateFont("Wingdings", SYMBOL_CHARSET);
  SendMessageA(hwnd, WM_SETFONT, hfont);
  SendMessageA(hwnd, WM_SETTEXT, textA);

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-22 12:45:33 +02:00
Zebediah Figura 7527ab493e gdi32/tests: Test writing to the default palette.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-22 12:45:00 +02:00
Alex Henrie 7c57461d29 gdi32: Fix memory leak on error in PATH_WidenPath (Coverity).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-04 14:22:36 +02:00
Alex Henrie e3648c7a61 gdi32: Avoid awkward cast in GetGlyphOutlineA (Coverity).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-01 20:01:28 +02:00
Vincent Povirk b6da3547d8 gdi32: Check that emf records are within the file.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-09 15:55:01 +02:00
Vincent Povirk 8d2676fd14 gdi32: Check for truncated EMF files.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-09 15:54:08 +02:00
Alexandre Julliard 60085f4e36 gdi32: Scale stock fonts based on the DPI awareness.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-12 13:50:01 +02:00
Alexandre Julliard 31967ef51d gdi32: Take DPI awareness into account for the LOGPIXELSX/Y device caps.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-12 13:26:31 +02:00
Alexandre Julliard 0188dc7da8 gdi32: Clip the computed region to the DIB rectangle in PolyPolygon().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-04 15:43:52 +02:00
Alexandre Julliard 737a113c10 gdi32: Add a helper function to retrieve the DIB rectangle.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-04 15:43:52 +02:00
Alexandre Julliard 99b64f7432 gdi32: Build the region object directly instead of making a copy in CreatePolyPolygonRgn.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-04 15:43:51 +02:00
Alexandre Julliard 97f996744e gdi32: Pre-allocate the points array in CreatePolyPolygonRgn.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-04 15:43:33 +02:00
Roderick Colenbrander 3de61a9dd9 winevulkan: Define vulkan driver interface.
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 12:47:16 +01:00
Akihiro Sagawa dce3e17185 gdi32: Fix text metrics in synthetic bold bitmap fonts.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 16:55:08 +01:00