Optimize creating wxCairoContext from wxMemoryDC associated with ARGB wxBitmap (MSW)

Legacy API cairo_win32_surface_create() can create only 24 bpp RGB surfaces but new API cairo_win32_surface_create_with_format() introduced in 1.15.4 supports creating also 32 bpp ARGB surfaces.
So, this new API can be used to create ARGB surface directly from ARGB bitmap (HDC), superseding current implementation based on the access to the bitmap data with cairo_image_surface_create_for_data().
Unfortunately, 0RGB bitmaps are not supported by cairo_win32_surface_create_with_format() and for such bitmaps surface has to be still created from bitmap data.
This commit is contained in:
Artur Wieczorek
2017-01-10 21:34:51 +01:00
parent 6cef4eaa11
commit e811c0640a
3 changed files with 27 additions and 5 deletions

View File

@@ -156,6 +156,8 @@ wxMSW:
- Return null BSTR from wxIAccessible if string returned from wxAccesible
method is empty.
- Handle Ctrl-A in non-rich multiline text controls (Jens Göpfert).
- Use cairo_win32_surface_create_with_format() to create ARGB surface from
wxMemoryDC (Cairo >= 1.15.4).
wxOSX: