| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
| |
See #705 and also https://gitlab.gnome.org/GNOME/gtk/-/issues/5226.
|
|
|
|
|
|
|
|
|
| |
We accept NULL for log_attrs, so we should not
crash when we are given NULL. While fixing this,
clarify the documentation of the various shaping
APIs for what they can and cannot do.
Related: !641
|
|
|
|
|
|
| |
Make the serializer only serialize the
font of a layout if it is not NULL. This
lets us survive no-fonts situations better.
|
|
|
|
|
|
|
|
| |
Make pango_font_get_scale_factors return 1
if the font is NULL. This avoids crashes
in situations where we cannot find any fonts.
Fixes: #701
|
|
|
|
|
|
|
|
| |
We were using the font metrics height, which is
scaled by the ctm, so we need to take the font
scale factors into account here.
Fixes: #691
|
|
|
|
|
| |
This avoids the unnecessary copy of the fonts
font description, just to extract the variant.
|
|
|
|
|
|
| |
Add a private pango_font_get_variant, and implement
it for PangoFcFont. This will let us avoid many
pointless font description copies.
|
|
|
|
|
|
|
|
| |
When we create a PangoFcFont from an FcPattern,
we know that the pattern will live as long as
the font and the font description we create
at the same time. So there is no need to copy
the strings we get out of the pattern.
|
| |
|
|
|
|
|
| |
It seems odd to document PANGO_WEIGHT_MEDIUM as the 'normal'
weight, when we also have PANGO_WEIGHT_NORMAL.
|
|
|
|
|
|
|
| |
We only want line separators at the line end
to be visible when the show flags say so. This
was not working before, because the shaping always
marks LS as unknown glyph.
|
|\
| |
| |
| |
| | |
Fix typo in declaration of PangoEngineShape
See merge request GNOME/pango!629
|
| | |
|
| |
| |
| |
| |
| | |
This is necessary to make GListModel show up
as implemented interface in the docs.
|
|/
|
|
|
|
|
| |
This reverts commit e5b62c8c27599699fa583a18e5346138799d9f50.
No longer needed. We've renamed everything to avoid
conflicts, instead.
|
|
|
|
|
|
|
|
|
|
| |
With a text of "ර් ", we were accidentally producing
a cursor position outside of the [start_xpos, end_xpos]
range, which clearly makes no sense.
Test included.
Fixes: #684
|
|
|
|
|
|
|
|
| |
Having both pango 1.x and pango 2 linked into
the same process will cause trouble, because the
type and function names conflict.
Error out if we detect this situation.
|
|\
| |
| |
| |
| | |
Update pango/pangowin32-fontmap.c, Do not enum Type-1-fonts
See merge request GNOME/pango!625
|
| | |
|
| | |
|
|/
|
|
| |
This showed up as wrong slopes with font size > 60.
|
|
|
|
|
| |
Notify :n-items when reloading the configuration,
since that may change the number of families.
|
|
|
|
|
| |
Add :item-type and :n-items properties, which
make the list model implementation more useful.
|
|
|
|
|
| |
Add :item-type and :n-items properties, which
make the list model implementation more useful.
|
|\
| |
| |
| |
| |
| |
| | |
layout: Try harder to survive without fonts
Closes #680
See merge request GNOME/pango!610
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
No great typography can be expected without fonts,
but we should try not to crash, since this situation
can apparently happen on Windows.
Fixes: #680
|
| |
| |
| |
| |
| | |
Let them have their NULL fonts.
Produce hexboxes without criticals.
|
|\ \
| | |
| | |
| | |
| | | |
pangowin32: register a "Sans-Serif" font
See merge request GNOME/pango!613
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This creates a fake font family which will fall back to the first
available font in the alias list and as a result
pango_win32_font_map_load_font() will no longer fail for "sans-serif".
This was already done for other aliases, but for some reason not for
"sans-serif".
See #680
|
|/
|
|
|
|
|
|
|
|
|
| |
load_fontset() in pangowin32 has various fallback code in case
no font is found, but load_font() doesn't and just returns NULL
in more cases.
I saw that the other backends like fc and coretext just call
load_fontset() in load_font() and return the first one.
This copies this strategy to the win32 backend.
|
|\
| |
| |
| |
| |
| |
| | |
Fix move pango_layout_move_cursor_visually
Closes #679
See merge request GNOME/pango!608
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When moving the cursor off the paragraph end to
the left in RTL text, we were moving to the previous
line, and not to the next line, as expected.
Test included.
Fixes: #679
|
|/
|
|
|
| |
Recent versions of clang notice that pango_core_text_fontset_load_font's
`key` local variable isn't used and errors out. Remove it.
|
|
|
|
|
|
|
|
|
| |
This was showing up as crashes in pitivi and inkscape.
The added test does not crash, but it does produce
the wrong result without the fix.
Fixes: #678
|
|
|
|
|
|
|
| |
When PangoAttrList was changed to use an array,
we lost the code that maintained non-decreasing
order in pango_attr_list_change. Bring it back,
and add a test for this.
|
|
|
|
|
|
| |
It is not really needed.
Fixes: #674
|
|
|
|
|
|
|
|
|
|
|
| |
Pango 1.50.x and later require a HarfBuzz version that is buildable via
Meson, so we can just use the standard dependency() call for HarfBuzz
for all builds.
This means that we can drop all the items where we search for HarfBuzz
manually.
Also remove the stray HarfBuzz items that are no longer used.
|
|
|
|
|
|
|
| |
During post-processing for lines, take into
account the baselines for each run, and shift
them vertically to align them on the dominant
baseline.
|
|
|
|
|
| |
Pango names it PANGO_VERSION_CHECK not PANGO_CHECK_VERSION (like glib).
Fix the one incorrect mention in the documentation comment.
|
| |
|
|
|
|
|
|
|
|
|
| |
handling of segmentation attributes can introduce
line breaks, after we removed them in allow_breaks
handling. Change the order to handle allow_breaks
last, so this doesn't happen.
Update affected tests.
|
|
|
|
|
|
|
|
|
|
|
| |
We were passing a format specifier that starts
with ' ', which some implementations of that API
don't like.
This change removes an extraneous space from the
output. Update affected tests.
Fixes: #659
|
|
|
|
|
|
|
| |
To avoid trivialities, check that our context
has a fontmap, at a strategic place.
Fixes: #658
|
| |
|
|
|
|
| |
These are just wrappers of g_object_ref/unref.
|
|
|
|
| |
Just use g_object_ref/unref.
|