| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
With the recently introduced threading for fontconfig
calls, we introduced an ordering issue where the fontmap
may die before an outstanding thread returns, and then
the code that unrefs the pattern object tries to remove
it from the fontmap cache.
Prevent that by giving each thread a strong ref on the
fontmap while it runs.
Fixes: #537
|
|\
| |
| |
| |
| | |
Speed up font sorting
See merge request GNOME/pango!221
|
| |
| |
| |
| |
| | |
Add sysprof marks around the expensive fontconfig
calls, and for when we are waiting on them.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
With a big fontconfig configuration, FcInit takes some time
(60-100ms on my system). Doing this work off the main thread
can potentially avoid blocking other work.
To take advantage of this, GTK calls pango_cairo_font_map_get_default()
early to initiate the creation of a fontmap, thereby triggering the
FcInit() call.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
fontconfig is thread-safe, so we can do calls that
can take several milliseconds to complete in a thread.
This patch does that for FcFontSetMatch and FcFontSetSort.
It is a win, at least for FcFontSetSort, since it
reduces the time that the main thread spends in
pango_fc_patterns_get_font_pattern for i > 0 from
around 10 to 6 milliseconds.
|
| |
| |
| |
| |
| |
| |
| | |
We have filtered-by-format lists of fonts available
now, so we should use them to ensure we always operate
on the same set of fonts. Also, fix another case of
passing NULL for the config.
|
|/
|
|
|
|
| |
The fontconfig configuration changes rarely, so we can avoid
unnecessary work by only doing the filtering by supported formats
once, and keeping the result.
|
|\
| |
| |
| |
| | |
Fix FcConfig uses
See merge request GNOME/pango!288
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Passing NULL for a config argument in a fontconfig
api means we are using the default configuration,
which may be different from the one the fontmap
is supposed to be using.
Fix an instance of this in pango_fc_face_list_sizes.
|
|/
|
|
|
|
|
|
|
| |
Passing NULL for a config argument in a fontconfig
api means we are using the default configuration,
which may be different from the one the fontmap
is supposed to be using.
Fix an instance of this in pango_fc_fontset_load_next_font.
|
|\
| |
| |
| |
| | |
Ci fixes
See merge request GNOME/pango!286
|
| | |
|
| |
| |
| |
| |
| | |
Remove the dashes that cause the runs to break, and seem
to be causing issues on both Debian and newer Fedora.
|
| | |
|
|/
|
|
|
| |
Switch to Fedora 33, and add the few extra python
packages that gi-docgen needs.
|
|\
| |
| |
| |
| | |
Gir fixes
See merge request GNOME/pango!285
|
| |
| |
| |
| |
| | |
PANGO_VERSION_MIN_REQUIRED is a build utility, and
is not useful as a constant in the gir. Leave it out.
|
| |
| |
| |
| |
| | |
PANGO_MAJOR/MINOR/MICRO_VERSION are useful to have
in the gir.
|
| |
| |
| |
| |
| | |
Add casts to get some defined constants to have
the right type in the gir. The games we play...
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
g-ir-scanner's handling of #defines is really rudimentary,
so we have to trick it to pick up PANGO_ATTR_TO_TEXT_END
as a constant with value 0, and then override the value
with an annotation.
See https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/369
|
| |
| |
| |
| |
| |
| | |
This reverts commit 59cdceff9c28aa344c04c24e42254e347ac67363.
The macOS runner is back.
|
|\ \
| |/
|/|
| |
| | |
Revert "ci: Temporarily disable macOS CI job as runner is offline"
See merge request GNOME/pango!284
|
| |
| |
| |
| |
| | |
The reprovisioned runner has Python 3.9 installed and includes
required change in its bash_profile.
|
| |
| |
| |
| |
| |
| | |
This reverts commit 59cdceff9c28aa344c04c24e42254e347ac67363.
The macOS runner is back.
|
|\ \
| |/
|/|
| |
| | |
docs: Remove references to gdk_pango_context_get_for_screen
See merge request GNOME/pango!283
|
|/
|
|
| |
Remove references to a function that no longer exists in gtk.
|
|\
| |
| |
| |
| | |
ci: Temporarily disable macOS CI job as runner is offline
See merge request GNOME/pango!282
|
|/
|
|
| |
See https://gitlab.gnome.org/Infrastructure/GitLab/-/issues/495
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
Fix font roundtrip
Closes #530
See merge request GNOME/pango!280
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Test that round-tripping through pango_font_describe
works. This is currently broken for scalable bitmap
fonts, such as color Emoji fonts.
We skip the test on OS X where we are most likely
missing the fonts.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We are using the size from the FcPattern. For scalable
bitmap fonts, this has been scaled to match the requested
pixel size. To make a font description that can be turned
back into a FcPattern and roundtrip successfully, we need
to undo that scaling. Thankfully, fontconfig leaves the
pixelsizefixupfactor in the pattern, so it is easy to do.
Fixes: #530
|
|/
|
|
| |
pango_cairo_font_map_get_default is transfer none.
|
|\
| |
| |
| |
| |
| |
| | |
tests: Avoid locale dependency
Closes #474
See merge request GNOME/pango!279
|
|/
|
|
|
|
|
| |
When producing output, use the C locale for formatting
floating point numbers, to avoid locale dependent output.
Fixes: #474
|
|
|
|
|
|
| |
Suggested by Philip Withnall.
Fixes: #415
|
|\
| |
| |
| |
| |
| |
| | |
Attr list overflow
Closes #455
See merge request GNOME/pango!278
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Avoid overflow when updating the end_index of
attributes in pango_attr_list_update. This is
a real risk, because end_index is commonly set
to G_MAXUINT to mean 'until the very end'.
Test included.
Fixes: #455
|
| |
| |
| |
| |
| | |
The arguments to pango_attr_list_update are ints,
but negative numbers don't make sense here.
|
|\ \
| |/
| |
| |
| | |
Fix test leak
See merge request GNOME/pango!276
|
| |
| |
| |
| | |
We have a green check there, lets keep it that way.
|
| |
| |
| |
| |
| | |
We just plugged all the memory leaks in tests,
lets not introduce new ones.
|
| |
| |
| |
| |
| | |
That breaks the tests, and misses the point of suppressing
these leaks in the first place.
|
|\ \
| |/
|/|
| |
| |
| |
| | |
Font face fixes
Closes #494 and #528
See merge request GNOME/pango!277
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We can't guarantee uniqueness of face names, so we
don't know that getting a face by name will return
the same face we got the name from (which is true if
faces are unique). So, just assert that we get a
face with the same name.
Fixes: #494
|
|/
|
|
|
|
|
|
| |
The docs were claiming that face names are unique,
but we don't know that, and it doesn't hold in
practice.
Fixes: #528
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
Translate origin point for vertical layout
Closes #454
See merge request GNOME/pango!168
|
| |
| |
| |
| |
| | |
The origin point for vertical layout needs to be translated
for cairo rendering from the horizontal origin to the vertical origin.
|