| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
pango_fontset_simple_append consumes the font
that it is given.
|
|
|
|
|
| |
For east and west gravity, the logical glyph extents
were still misaligned with the ink extents.
|
|\
| |
| |
| |
| | |
cairo: Produce meaningful logical glyph extents
See merge request GNOME/pango!490
|
| |
| |
| |
| |
| |
| | |
cf_priv->scaled_font is initialized on demand, it may
be NULL. So better call the getter. This was showing
up as failure in the asan test in ci.
|
| |
| |
| |
| |
| | |
Without this, we end up with differences in
metrics of empty runs.
|
| |
| |
| |
| |
| |
| |
| | |
We were looking at the wrong font options here,
causing metrics to not be hinted when they should
be. This was causing some of the empty line height
tests to fail.
|
| |
| |
| |
| |
| | |
Depending on gravity, our logical glyph extents
were empty and mis-aligned. Fix that.
|
|/
|
|
| |
Also drops the null-terminated doc comment as gi-docgen shows that already
if the function is annotated properly
|
|
|
|
|
| |
Add some missing details about new enumerations
and run baselines.
|
|
|
|
| |
from a manual override in gtk-rs
|
| |
|
|
|
|
|
|
| |
This broke glyph extents with gravity north or west.
This reverts commit 20ec670e124e4461075a2967faa29603d25106cc.
|
| |
|
|
|
|
| |
Fold markers always just use 3 {, even when nested.
|
|
|
|
| |
Add default implementations for is_monospace and is_variable.
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
Fix empty line heights
Closes #421
See merge request GNOME/pango!481
|
| |
| |
| |
| |
| |
| |
| | |
For empty runs, we were sometimes using line height,
which may be scaled up by the line-height attribute.
Fix that.
|
| |
| |
| |
| |
| |
| | |
Fix the calculation of line height for empty lines
to take the line-height attributes into account like
we do for non-empty lines.
|
| |
| |
| |
| |
| |
| |
| | |
Without this, we end up with differences in
metrics of empty runs.
Fixes: #421
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When metrics hinting is on, we used to provide rounded
font metrics. We should keep doing that since otherwise
we end up with logical rects sometimes being rounded
and sometimes not, leading to jumping empty lines.
Test included.
Fixes: #421
|
| | |
|
| | |
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
Underline spaces again
Closes #613
See merge request GNOME/pango!478
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
in ada1bc9385d638e4c42, I switched to using ink rects
for horizontal underline extents, to improve the placement
of single-character underlines in the presence of
kerning. I overlooked the fact that spaces don't have ink,
so the change caused leading and trailing whitespace to
not be underlined anymore. Fix this by using the union
of ink and logical rectangles.
Fixes: #613
|
|/ |
|
|
|
|
|
| |
These were showing up as warnings about garbage
values in the gtk static-scan build.
|
|
|
|
|
| |
Fix a warnings about garbage values that are
showing up in the gtk static-scan build.
|
|
|
|
| |
I was carelessly not initializing prev to NULL.
|
|
|
|
|
|
|
|
|
|
|
|
| |
We don't really have firm control over the way
attributes are ordered in the list, so the
assumtion that we see proper nesting for baseline
shifts was a bit optimistic.
Just look through all open stack items for a match,
and remove that.
Test included.
|
| |
|
|\
| |
| |
| |
| | |
Implement baseline shifts
See merge request GNOME/pango!462
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Apply horizontal displacements for superscripts and subscripts
that are provided in font metrics. This noticably improves the
placement of superscripts in italics.
Currently, we only apply these displacements in post-processing,
and ignore the width changes during line-breaking. This could
be improved by moving the baseline handling into the line-breaking
proper.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Use the new baseline-shift and font-scale attributes
to reimplement <sup> and <sub>.
Now they take font metrics into account and nest
properly.
|
| |
| |
| |
| |
| |
| |
| | |
Add a new font-scale attribute to indicate font size
changes due to super- and subscript shifts, and handle
it during item post-processing to find the right font
sizes.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add a new baseline-shift attribute, which is similar to
rise, but accumulates. In addition, it supports font-
relative values such as superscript and subscript.
We implement support for this by computing baseline
shifts for run during line post-processing, and storing
them in the runs. The renderer now takes these shifts
into account when rendering layout lines.
|
| |
| |
| |
| |
| |
| | |
We are going to add new fields to PangoGlyphItem,
so zero-initialize the one we are allocating here
in ellipsize.c.
|
| |
| |
| |
| |
| | |
GTK needs this information to decide how to
render the glyphs, so provide it.
|
| | |
|
|/
|
|
|
| |
Now that we have a private class, we can retire
the misplaced vfunc in the fontmap class.
|
|
|
|
|
|
|
|
| |
Set a size on the font description returned by
pango_font_describe(). Otherwise, scaling it
doesn't work.
Fixes: #610
|
| |
|
|
|
|
| |
If we don't have them, just do the fallback.
|
|
|
|
|
|
| |
This variant of pango_glyph_string_index_to_x takes
log attrs so it does not have to compute them when
it needs them to determine grapheme boundaries.
|
|
|
|
|
|
|
|
|
|
| |
We need to take into account whether the characters
we are counting are actually cursor positions, else
we are bound to look for more carets than the font
has available, sometimes.
This change would benefit from passing log attrs into
pango_glyph_string_index_to_x.
|
|
|
|
| |
This is useful information.
|
|
|
|
| |
This has been broken all along. :(
|
|
|
|
| |
This broke the msvc build.
|
| |
|