summaryrefslogtreecommitdiffstats
path: root/config_host
diff options
context:
space:
mode:
authorLuboš Luňák <l.lunak@collabora.com>2020-01-09 14:10:00 +0100
committerLuboš Luňák <l.lunak@collabora.com>2020-01-09 15:26:31 +0100
commit994b8e52fc02c7468a243efd5e3ba7ffcd81e283 (patch)
tree106db5f9d3a945b5abc6f2d98ee21e83af9e56a2 /config_host
parentfix Skia virtual device alpha blending (tdf#129865) (diff)
downloadcore-994b8e52fc02c7468a243efd5e3ba7ffcd81e283.tar.gz
core-994b8e52fc02c7468a243efd5e3ba7ffcd81e283.zip
add setting to config_skia.h whether to use 32bpp bitmaps
As said in previous Skia commits about BackendCapabilities::mbSupportsBitmap32 this should be preferrably enabled, but there are still parts of LO code that have a problem with it, so make it easier to enable/disable this. Change-Id: Iae7a8d5fc77a27372c00f6745317d168e8b2a05b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86489 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Diffstat (limited to 'config_host')
-rw-r--r--config_host/config_skia.h.in17
1 files changed, 17 insertions, 0 deletions
diff --git a/config_host/config_skia.h.in b/config_host/config_skia.h.in
index 75b1e099ce8e..1a8b64a1dfd6 100644
--- a/config_host/config_skia.h.in
+++ b/config_host/config_skia.h.in
@@ -8,6 +8,23 @@ are the same.
#ifndef CONFIG_SKIA_H
#define CONFIG_SKIA_H
+// This a setting that should be set manually and it affects LO
+// code rather than Skia itself. It basically controls setting
+// BackendCapabilities::mbSupportsBitmap32.
+// Since Skia does not natively support 24bpp, the preferred setup is
+// that the setting should be enabled, it makes the code faster and cleaner.
+// Unfortunately VCL historically splits alpha into a whole separate
+// bitmap and works with 24bpp+8bpp, which is generally more complicated,
+// more error-prone and just worse, but that's how LO code has been
+// written and so there are many places in LO that expect this and
+// do not work correctly with true 32bpp bitmaps.
+// So ultimately the 24+8 split should be dumped (preferably in all of LO,
+// not just the Skia-related code), but until all of LO works correctly
+// with 32bpp disabling this will avoid such breakages.
+#define SKIA_USE_BITMAP32 1
+//#define SKIA_USE_BITMAP32 0
+
+
/* TODO SKIA check all these */
#define SK_SUPPORT_GPU 1