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
Akihiro Sagawa
b4a10d17c6
gdi32/tests: Add more text metrics tests 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
Akihiro Sagawa
68f9fb556d
gdi32: Fix synthetic bold outline text metrics.
...
Without this fix, synthetic tmAveCharWidth value unintentionally affects
SCALE_X calculation.
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
Akihiro Sagawa
c17a8f32c4
gdi32: Fix ABC width calculations when using vertical font.
...
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-08 10:20:24 +01:00
Akihiro Sagawa
34c4687f25
gdi32/tests: Add more ABC width tests with vertical font.
...
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-08 10:20:21 +01:00
Akihiro Sagawa
da63c2356d
gdi32/tests: Add more ABC width tests in various widths.
...
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-08 10:20:19 +01:00
Akihiro Sagawa
2a402a427a
gdi32: Fix ABC width calculations when applying transformations internally.
...
This fixes a regression introduced by f6bc356860
.
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-08 10:20:16 +01:00
Michael Stefaniuc
5c3928df94
gdi32/tests: Use the global HeapAlloc() wrappers.
...
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-01-31 09:46:37 +01:00
Huw Davies
82973cfbd1
gdi32: Allocate the bitmap bits during CreateBitmapIndirect() to catch out-of-memory errors.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-23 11:33:39 +01:00
Huw Davies
1def41b903
gdi32: Don't bother using the return value of HeapFree().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 12:21:09 +01:00
Alexandre Julliard
90273a6e81
gdi32: Fix clipping to the DIB rectangle in GetPixel().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-22 16:29:03 +01:00
Huw Davies
ccc871dcd0
gdi32: Set otmMacLineGap from the line gap in the hhea table.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-19 19:49:02 +01:00
Alex Henrie
d819609255
gdi32: Scale outline font metrics as signed integers.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-19 19:49:01 +01:00
Fabian Maurer
6f790606c0
gdi32: In AddFaceToList allow fonts with long names and add tests.
...
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>
2017-11-28 22:00:39 +01:00
Alexandre Julliard
17dffaac7d
opengl32: Get WGL function definitions from the XML files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-10 10:06:10 +02:00
Huw Davies
de9d224996
gdi32: Ignore the alpha channel for blits to DDBs too.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-06 21:48:49 +02:00
Nikolay Sivov
d82321006d
gdi32: Pick first charmap if none was selected using preferred encoding.
...
FreeType 2.8.1 has similar logic removed from WinFNT module,
that always pre-selected first charmap.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 11:20:08 +02:00
Nikolay Sivov
2bd5f6e057
gdi32: Remove runtime check for FT_Set_Charmap().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 11:20:01 +02:00
Alexandre Julliard
66507e86c0
gdi32: Do not dither non-extended wide pens.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-28 09:14:30 +02:00
Alexandre Julliard
1c56b3b516
gdi32: Use the correct brush origin when the blit operation requires an intermediate bitmap.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-28 09:10:45 +02:00
Alexandre Julliard
97a9db43d2
gdi32: Pass the brush origin explicitly to the brush backend functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-28 09:08:41 +02:00
Andrew Eikum
083e61fddf
gdi32: Update metafile world transform immediately in winnt mode.
...
The Chrome browser print function implements their own handling for
EMR_MODIFYWORLDTRANSFORM which calls ModifyWorldTransform on the HDC
directly without ever calling PlayEnhMetaFileRecord. In Wine, this
transformation would get discarded when the callback function returned,
causing the page to be printed at the wrong scale.
Tests show that the transform is updated immediately during
PlayEnhMetaFileRecord. In addition, a modified transform persists
between callbacks until PlayEnhMetaFileRecord is called on a relevant
type of callback, at which point the transform is reverted before
playing back the record.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 18:30:18 +02:00
Alexandre Julliard
593def1756
gdi32/tests: Run DIB tests also against a monochrome DDB.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 12:47:14 +02:00
Alexandre Julliard
80ae5c968e
gdi32: Always dither brush when painting to a 1-bpp device.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 10:05:55 +02:00
Alexandre Julliard
103f2646d5
gdi32/tests: Add a test case for DIB color painting.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 10:05:55 +02:00
Huw Davies
9ea33ed00a
gdi32: Cache the device caps from the reference dc, since the dc may become invalid.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 14:16:47 +09:00
Huw Davies
8e9af9e016
gdi32: Respect the rop mode in SetPixel.
...
Based on a patch by Tim Worthington.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 18:58:30 +02:00
Huw Davies
46e6ee48f3
gdi32: Add a helper to fill rectangles with a given pixel.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 18:58:30 +02:00
Akihiro Sagawa
22135ba583
gdi32: Return non-zero VREFRESH value for display devices.
...
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>
2017-07-21 18:39:27 +02:00
Jens Reyer
ebbbe85038
make_unicode: Use VerticalOrientation.txt from UCD.
...
Signed-off-by: Jens Reyer <jre.winesim@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 11:45:18 +02:00
Alexandre Julliard
474f9ff1fa
gdi32: Avoid having the source alpha channel interfere with color comparisons in GdiTransparentBlt.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-12 11:43:50 +02:00
Piotr Caban
f629e9797d
gdi32: Don't write EMR_EXTSELECTCLIPRGN to emf file on SelectClipPath call.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-22 10:56:58 +02:00
Alexandre Julliard
0c005a329e
gdi32: Return more meaningful data in the null driver GetDeviceCaps implementation.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-18 13:22:48 +02:00
Huw Davies
2dfb09893c
gdi32: Try to read the dpi from the user key first.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-27 22:22:47 +02:00