Piotr Caban
e0513f4dd1
gdi32: Add GdiIsMetaPrintDC implementation.
2023-04-27 18:34:10 +02:00
Piotr Caban
ca66b3eb84
gdi32: Add support for creating EMF spool files.
2023-04-27 18:34:10 +02:00
Piotr Caban
f79c9f3568
gdi32: Factor out emf_create helper.
2023-04-27 18:34:10 +02:00
Piotr Caban
16b951ccbf
gdi32: Factor out emf_eof helper.
2023-04-27 18:34:10 +02:00
Piotr Caban
acbccf177e
gdi32: Improve EMF DC cleanup when CloseEnhMetafile is not called.
2023-04-27 18:34:10 +02:00
Piotr Caban
d317db91f2
gdi32: Store the printer info in a structure.
2023-04-27 18:34:09 +02:00
Piotr Caban
28df39908a
gdi32/tests: Add EMF palette tests.
2023-04-22 17:34:32 +02:00
Piotr Caban
f45baaa11e
gdi32: Store palette in EMR_EOF record.
2023-04-22 17:34:32 +02:00
Piotr Caban
b9b159e5a8
gdi32: Fix EMR_CREATEPALETTE recording.
2023-04-22 17:34:32 +02:00
Piotr Caban
c752e84543
gdi32: Use EMR_REALIZEPALETTE to record RealizePalette.
2023-04-22 17:34:32 +02:00
Piotr Caban
747fa33bbb
gdi32: Handle EMR_TRANSPARENTBLT record in PlayEnhMetaFileRecord.
2023-04-13 21:56:58 +02:00
Piotr Caban
061dc3a480
gdi32: Support stock brush in EMR_FRAMERGN.
2023-04-11 18:22:29 +02:00
Piotr Caban
10dfb4f3b7
gdi32: Support stock brush in EMR_FILLRGN.
2023-04-11 18:22:29 +02:00
Piotr Caban
1fa938c17e
gdi32: Factor out function for obtaining gdi object handle.
2023-04-11 18:22:29 +02:00
Paul Gofman
c4073d5abf
win32u: Set DEVPKEY_Device_RemovalPolicy for GPUs.
2023-04-06 17:02:18 +02:00
Paul Gofman
bee387dc8a
win32u: Set DEVPKEY_Device_BusNumber for GPUs.
2023-04-06 17:02:18 +02:00
Paul Gofman
80910517d7
win32u: Set DEVPKEY_Device_MatchingDeviceId for GPUs.
2023-04-06 17:02:18 +02:00
Piotr Caban
273f40b6c4
gdi32: Let SetDIBits handle DIB_PAL_INDICES color usage in PlayEnhMetaFileRecord.
2023-04-06 14:32:32 +02:00
Piotr Caban
8ada95cec4
gdi32: Rename DIB_PAL_MONO to DIB_PAL_INDICES.
2023-04-06 14:32:32 +02:00
Piotr Caban
3f051d3b1e
win32u: Add support for undocummented DIB_PAL_INDICES color usage in SetDIBits.
2023-04-06 14:32:32 +02:00
Piotr Caban
065fbd206d
gdi32: Improve EMR_CREATEDIBPATTERNBRUSHPT playback.
...
It makes the lbHatch data available after PlayEnhMetaFileRecord returns.
2023-03-09 18:11:28 +01:00
Francois Gouget
9d6a9909c3
gdi32/tests: Fix the SetDeviceGammaRamp() tests on Windows 10 1909.
...
SetDeviceGammaRamp() checks the specified ramp to prevent applications
from setting malicious gamma ramps (e.g. hiding text by remapping its
color to match the background).
But Windows 10 1909 has fewer checks than later Windows 10 versions.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54593
2023-02-27 16:36:22 +01:00
Francois Gouget
267f612604
gdi32/tests: Make the gamma ramp failures more unique.
...
Otherwise the only way to identify which failure happened is to check
its line number which is not practical across versions.
2023-02-27 16:36:22 +01:00
Francois Gouget
390ed160ef
gdi32/tests: Simplify setting up the non uniform gamma ramps.
2023-02-27 16:36:22 +01:00
Ivan Chikish
907b1b4a36
gdi32/tests: Check last error on ' '.
2023-02-24 22:23:12 +01:00
Francois Gouget
2436964d56
gdi32/tests: Mark a couple other D3DKMTCheckOcclusion() tests as flaky.
...
They also happen randomly on Windows (see commit 2d19baa6b5
).
Wine-Bug: https://bugs.winehq.org//show_bug.cgi?id=51313
2023-02-20 23:00:34 +01:00
Hans Leidekker
a744265c1e
gdi32/tests: Mark another D3DKMTCheckOcclusion() test as flaky.
...
It shows the same behavior as the one marked by commit 2d19baa6b5
.
Wine-Bug: https://bugs.winehq.org//show_bug.cgi?id=51313
2023-01-30 18:54:29 +01:00
Piotr Caban
b6204639ba
gdi32: NULL terminate output string in CreateDCW.
2022-11-29 19:11:19 +01:00
Piotr Caban
1cf1412a12
gdi32: Get printer output file name in StartDoc.
2022-11-22 18:27:30 +01:00
Piotr Caban
4e527045d5
gdi32: Don't crash in StartDoc on NULL DOCINFO.
2022-11-22 18:27:30 +01:00
Alexandre Julliard
a1c8232b33
include: Remove custom/undocumented language identifiers.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-11-16 21:24:18 +01:00
Tarcísio Ladeia de Oliveira
61f566260b
gdi32/tests: Fix assertion message.
2022-11-07 21:13:32 +01:00
Ziqing Hui
b558c87c50
gdi32/uniscribe: Add fallback font for Kana and CJK script.
...
This fixes Chinese and Japanese text display issue for
Sins of a Solar Empire: Rebellion.
2022-11-04 19:23:55 +01:00
Mark Jansen
4312be1646
gdi32: Fix possible overflow.
...
According to the documentation of ScriptShape function, the psva argument should have the number of elements indicated by cMaxGlyphs.
2022-10-11 20:54:18 +02:00
Francois Gouget
2d19baa6b5
gdi32/tests: Mark tests failing randomly on Windows as flaky.
...
Wine-Bug: https://bugs.winehq.org//show_bug.cgi?id=51313
2022-10-11 17:13:36 +02:00
Alexandre Julliard
7ab46c4f21
unicode: Update to Unicode 15.0.0.
2022-09-14 22:38:34 +02:00
Alexandre Julliard
3e3caf1efd
gdi32/tests: Mark some tests that fail without Vulkan as todo.
2022-09-13 22:07:22 +02:00
Alexandre Julliard
24da06789e
unicode: Add data for high Unicode planes to the bidi direction table.
2022-09-05 18:41:47 +02:00
Alexandre Julliard
ba58338b21
unicode: Add data for high Unicode planes to the linebreak table.
2022-09-05 18:41:47 +02:00
Zhiyi Zhang
58b477d158
win32u: Choose a smaller ppem to avoid exceeding the requested font height.
...
When height > 0, CreateFontA/W() should not return a font face exceeding the requested height.
For instance, Tahoma has 2049 units of ascent, 423 units of descent and its units per EM square is
2048. When requesting a font 20 pixels in height, ppem = units_per_EM * requested_height / (ascent + descent)
= 2048 * 20 / (2049 + 423) = 16.57 ~= 17. When getting the resulting height back from the ppem,
resulting_height = (ascent + descent) * ppem / units_per_EM = (2049.0 + 423) * 17 / 2048 = 20.52
~=21. So it ends up getting a larger font than requested and violates the spec.
Fix Nancy Drew: Legend of the Crystal Skull crash at start.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2022-08-19 22:45:18 +02:00
Zhiyi Zhang
821b36e00b
gdi32/tests: Add more tests for GetTextMetrics().
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2022-08-19 22:45:18 +02:00
Jacek Caban
2b6647cdd5
win32u: Use platform-independent layout for DC_ATTR.
2022-08-09 15:55:43 +02:00
Zhiyi Zhang
546cbdc250
win32u: Create a dummy bitmap for display device contexts.
...
On Windows 7 and older versions of Windows, calling GetCurrentObject(hdc, OBJ_BITMAP) for a display
device context will return a valid handle. However, this handle will fail for GetObject(). On newer
versions of Windows, GetCurrentObject(hdc, OBJ_BITMAP) for display device contexts returns a bitmap
of virtual screen size and its size changes after display mode changes. This behavior is tested in
the _check_display_dc() function in user32/tests/monitor.c.
The screen shot function of WeChat depends on GetObject() to either return failure or a valid size
for the bitmap from display device contexts. Since Wine currently report Windows 7 as default and to
save memory, the Windows 7 behavior is implemented.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
2022-05-30 22:07:42 +02:00
Huw Davies
6a9a80679d
gdi32: Free the client-side emf dc info.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
2022-05-24 17:34:59 +02:00
Huw Davies
0c8a076e78
gdi32: Remove second initialization of emf->dc_attr.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
2022-05-24 17:34:59 +02:00
Zhiyi Zhang
8bc0c8d646
gdi32: Implement D3DKMTQueryVideoMemoryInfo().
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-17 17:50:43 +02:00
Zhiyi Zhang
37b74e644a
gdi32/tests: Add D3DKMTQueryVideoMemoryInfo() 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>
2022-05-17 17:50:30 +02:00
Francois Gouget
0519aec310
gdi32/tests: Trace the invalid height in test_max_height().
...
Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-27 16:14:25 +02:00
Alexandre Julliard
7500fc1ce9
gdi32: Support UTF-8 codepage in TranslateCharsetInfo().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52847
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 13:06:15 +02:00
Nikolay Sivov
f534e3f499
gdi32: Use NtUserGetSysColor() directly.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-19 17:35:33 +02:00