qt5base-lts/tests/baseline/painting/scripts
Eskil Abrahamsen Blomfeldt 58907dfa81 Try to match variant-selector font to preceding character
Variant-selectors are special unicode symbols which are used to
modify glyph selection for the preceding character. For instance,
a regular symbol could be turned into a color emoji using VS16,
the emoji variation selector. In order for this to work, however,
the font that handles the selector has to handle the full pair of
characters, so that it can apply the correct substitution rules.

One specific example of this was on macOS, where an airplane
symbol + VS16 would match the symbol to the default UI font but
the VS16 to the emoji font. Since there string provided for the
emoji font did not have any preceding character for VS16, we just
ignored it.

To improve on this, we now detect variation selectors that have
been matched to different font engines than the preceding
character. When such a case occurs, we check if the selector font
also supports the preceding character, and if it does, we keep
the pair together and use the same font for both.

[ChangeLog][QtGui][Text] Fix some cases where a variation-selector
character would be ignored in font selection and the correct
variant of a character would thus not be selected.

Task-number: QTBUG-108799
Change-Id: I9f427e0520e652ee2f24a4f7dc3c1957251e06bd
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2022-12-12 19:25:45 +01:00
..
aliasing.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
arcs2.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
arcs.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
background_brush.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
background.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
beziers.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
bitmaps.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
borderimage.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
brush_pens.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
brushes.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
clippath_antialiasing.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
clippaths.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
clipping_state.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
clipping.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
cliprects.qps Painting: fix overriding and combining different clip types 2022-03-15 12:45:46 +01:00
conical_gradients_perspectives.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
conical_gradients.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
cosmetic.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
dashes.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
degeneratebeziers.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
deviceclipping.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
drawpoints.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
ellipses.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
fillrect_aa.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
fillrect.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
filltest.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
glyphruns.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
gradients.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
gradientxform_device.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
gradientxform_logical.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
gradientxform_object.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
hinting.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
image_dpr.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
image_formats.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
images2.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
images.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
join_cap_styles_duplicate_control_points.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
join_cap_styles.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
linear_gradients_perspectives.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
linear_gradients.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
linear_resolving_gradients.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
lineconsistency.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
linedashes2_aa.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
linedashes2.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
linedashes.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
lines2.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
lines3.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
lines.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
pathfill.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
paths_aa.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
paths.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
pattern_xform2.qps Support cosmetic brush patterns in the pdf and opengl paint engines 2022-06-04 21:15:42 +02:00
pattern_xform.qps Support cosmetic brush patterns in the pdf and opengl paint engines 2022-06-04 21:15:42 +02:00
pens_aa.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
pens_cosmetic.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
pens.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
perspectives2.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
perspectives.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
pixmap_rotation2.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
pixmap_rotation.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
pixmap_scaling.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
pixmap_subpixel.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
pixmaps.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
porter_duff2.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
porter_duff.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
primitives.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
radial_gradients_perspectives.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
radial_gradients.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
rasterops.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
richtext.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
sizes.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
smallcaps_path.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
statictext.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
text_perspectives.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
text.qps Try to match variant-selector font to preceding character 2022-12-12 19:25:45 +01:00
thinlines.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
tiled_pixmap.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00
tinydashes.qps Rename and restructure the baseline (lancelot) testing code 2021-11-16 14:01:50 +01:00