office-gobmx/vcl/README.vars
Luboš Luňák a9f68d9d9a don't duplicate large memory usage in SkiaSalBitmap (tdf#134342)
Since SkiaSalBitmap is required to support bitmap formats that
Skia itself doesn't support (1bpp, 4bpp, 24bpp,etc.), it needs
to store its own copy of the bitmap data and convert to SkImage
for use. With huge images this can lead to large duplicated
memory usage. Since the code can actually drop the buffer and
create it if needed (which it normally is not), just drop large
buffers after converting to SkImage.
Ideally SalBitmap should be able to say which bitmap formats it
supports and VCL code should oblige, which would allow reusing
the same data.

Change-Id: I98af62a51dde5d738cc8afcdd2fcdc25ff89952f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99476
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-07-27 14:48:29 +02:00

60 lines
2.5 KiB
Text

Environment variables in VCL:
General
-------
SAL_USE_VCLPLUGIN - use a VCL plugin
SAL_RTL_ENABLED - Enable RTL UI
SAL_NO_NWF - disable native widgets
SAL_FORCEDPI - force a specific DPI (gtk3 & qt5/kf5 plugins only)
SAL_FORCE_HC - force high-contrast mode
SAL_NO_FONT_LOOKUP - disable font search and fallback and always use a hard-coded font name (for some unit tests)
LO_COLLECT_UIINFO - enable the uitesting logging, value is expected to be a relative file name that
will be used to write the log under instdir/uitest/.
VCL_DOUBLEBUFFERING_AVOID_PAINT - don't paint the buffer, useful to see where we do direct painting
VCL_DOUBLEBUFFERING_FORCE_ENABLE - enable double buffered painting
VCL_DOUBLEBUFFERING_ENABLE - enable a safe subset of double buffered painting (currently in Writer, not in any other applications)
VCL_DEBUG_DISABLE_PDFCOMPRESSION - disable compression in the PDF writer
Gtk+
----
VCL_GTK3_PAINTDEBUG - in debug builds, if set to 1 then holding down shift+0 forces a redraw event, shift+1 repaints everything, and
shift+2 dumps cairo frames to pngs as /tmp/frame<n>.png
GDK_SCALE=2 - for HiDPI scaling (just supports integers)
Bitmap
------
VCL_NO_THREAD_SCALE - disable threaded bitmap scale
VCL_NO_THREAD_IMPORT - disable threaded bitmap import
EMF_PLUS_DISABLE - use EMF rendering and ignore EMF+ specifics
OpenGL
------
SAL_FORCEGL - force enable OpenGL
SAL_GL_NO_SWAP - disable buffer swapping if set (should show nothing)
SAL_GL_SLEEP_ON_SWAP - sleep for half a second on each swap-buffers.
SAL_DISABLE_WATCHDOG - don't start the thread that watches for broken GL/Vulkan/OpenCL drivers
SAL_DISABLE_GLYPH_CACHING - don't render glyphs through OpenGL textures or Skia surfaces
Skia
----
SAL_DISABLESKIA=1 - force disabled Skia
SAL_ENABLESKIA=1 - enable Skia, unless denylisted (and if the VCL backend supports Skia)
SAL_FORCESKIA=1 - force using Skia, even if denylisted
SAL_SKIA=raster|vulkan - select Skia's drawing method, by default Vulkan is used
SAL_DISABLE_SKIA_CACHE=1 - disable caching of complex images
SAL_SKIA_KEEP_BITMAP_BUFFER=1 - SkiaSalBitmap will keep its bitmap buffer even after storing in SkImage
OpenGL,Skia
-----------
SAL_WITHOUT_WIDGET_CACHE - disable LRU caching of native widget textures
Qt
-----
QT_SCALE_FACTOR=2 - for HiDPI testing (also supports float)
SAL_VCL_QT5_NO_FONTCONFIG - ignore fontconfig provided font substitutions
SAL_VCL_QT5_NO_NATIVE - disable QStyle'd controls
SAL_VCL_QT5_USE_CAIRO - use cairo for text rendering and fonts (default for kf5, but not qt5)