Files
odfstudio/include
Luboš Luňák 6c8dffc19e compute subset of glyphs in SalLayoutGlyphsCache (tdf#139604)
When OutputDevice::ImplLayout() computes glyphs, the result
is always the same for the same string (and font etc.),
and if the function is asked to work on just a subset of the string,
the returned glyphs are often also a subset of glyphs for the full
string. Since e.g. EditEngine breaks text into lines by first
laying out a full string and then repeatedly calls the same function
for a subset of the string with increasing starting index. So if
the full result is cached, it's faster to just make a subset of that,
adjust it as necessary and return that, instead of doing a layout
again.

This requires support from harfbuzz to tell us if it's safe to break
at a given position, and HB_GLYPH_FLAG_UNSAFE_TO_BREAK is that
(https://harfbuzz.github.io/harfbuzz-hb-buffer.html#hb-glyph-flags-t).

I'm keeping the optimization for tdf#144515, as avoiding the extra
layout altogether is still useful.

Change-Id: I33f70f9af89be79056e464908eac0861f58d274a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132753
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2022-04-14 08:34:20 +02:00
..
2022-04-10 20:15:16 +02:00
2022-04-05 21:49:04 +02:00
2022-04-11 17:44:46 +02:00
2022-03-23 10:18:54 +01:00
2022-03-14 07:36:13 +01:00
2022-03-24 15:06:24 +01:00
2022-04-11 17:44:46 +02:00
2022-04-11 17:44:46 +02:00
2021-10-01 20:58:11 +02:00
2022-04-13 19:02:00 +02:00
…
2022-04-13 16:55:35 +02:00
2022-03-07 12:53:27 +01:00
2021-10-11 11:37:04 +02:00
2022-04-13 20:36:16 +02:00
…
…
…
…