| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Show how weak and strong cursors look in
practice.
Fixes: #77
|
|
|
|
| |
No need to link a function to itself.
|
| |
|
|\
| |
| |
| |
| | |
Implement css-like line-height
See merge request GNOME/pango!390
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Fix up the various apis that are reporting logical
rects to follow these rules:
Logical rectangles of lines are affected by the
line-height attribute, logical rectangles of smaller
units (runs, clusters, chars, cursors, etc) are not.
This fixes the text cursors and block cursors in
GTK to be 'normal' height, even when applying
line-height for double-spacing.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Modify the height and vertical origin of logical
extents according to the line height attributes.
We currently apply half the leading above and
half below the content (i.e., lines are vertically
centered in their modified height).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add attributes for line-height, in a relative and
absolute variant.
This will be used to grow the logical extents of
runs in a way that is compatible with CSS semantics.
In markup, we support a new line_height attribute
that will be interpreted as absolute if it is an
integer > 1024, and as a relative factor otherwise.
|
|\ \
| |/
|/|
| |
| | |
docs: Cosmetic change
See merge request GNOME/pango!396
|
| |
| |
| |
| |
| | |
Unversioned deprecations come out odd in
gi-docgen. Add a version to avoid that.
|
| |
| |
| |
| | |
Shorten the first line of the PangoBidiType docs.
|
| |
| |
| |
| |
| | |
There was a cw vs ccw mixup here.
Adding example images made it obvious.
|
| |
| |
| |
| | |
Add some visualizations of gravity.
|
|/
|
|
|
| |
Add some visualization of alignment and justification
to the PangoLayout docs.
|
|
|
|
| |
Add a cross-reference to the PangoAlignment docs.
|
|
|
|
|
| |
Add some more detail around baseline-to-baseline
distances.
|
|\
| |
| |
| |
| |
| |
| | |
Reimplement pango_layout_move_cursor_visually
Closes #587, #585, and #157
See merge request GNOME/pango!389
|
| |
| |
| |
| |
| | |
Make the docs for pango_layout_move_cursor_visually
a bit more clear.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Reimplement this function based on pango_layout_get_cursor_pos.
This is a bit less efficient, but it fixes cases where the old
implementation would get stuck.
Fixes: #587, #585, #157
|
| |
| |
| |
| |
| | |
Try to disambiguate run boundaries better.
Not sure this works as intended, yet.
|
| |
| |
| |
| |
| |
| |
| | |
Accept values like 200%, in addition to other
ways of specifying sizes in markup.
Fixes: #23
|
| | |
|
|/
|
|
|
|
|
|
| |
Accept values like 12.5pt, in addition to
the other ways of specifying font size in
markup.
Fixes: #67
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts 681f92d78c2623, after adding the crash
that it alludes to as a test case and verifying that
it no longer crashes.
This commit was causing split cursors to not work
as intended at the end of a mixed-direction string.
Broken since 2008...
|
|
|
|
|
|
|
|
|
| |
Changes in width only need to break runs in
vertical context.
Update tests and add a new test.
Fixes: #503
|
|
|
|
|
|
|
|
| |
itemize_state_init was setting gravity-related fields
to their initial values too late, after update_attr_iterator
has already set them to the values for the first run.
Test included.
|
|
|
|
|
|
| |
Just pass PANGO_GRAVITY_AUTO on to
pango_gravity_get_for_script_and_width.
It has just the same fallback handling.
|
|
|
|
|
|
|
|
| |
Add functions to cast PangoAttribute to the various
struct types, so language bindings can get at the
payload.
Fixes: #476
|
|
|
|
|
|
| |
Add accessors for PangoLayoutLine fields.
Fixes: #553
|
|
|
|
|
|
| |
Add private api to get the necessary information from
the font backend, and drop the hack that was added in
d4356779945855f7cc.
|
|
|
|
|
|
| |
Start using private vfuncs for PangoFont, and use it
to replace the recently introduced pango_fc_font_get_languages
with a frontend api.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
pango_attr_iterator_get_attributes only returns
the innermost attribute of each kind. That is correct
for attributes that supersede each other, but not for
font descriptions, which get merged. So, keep all
font attributes in the returned list.
Update affected tests.
|
|\
| |
| |
| |
| |
| |
| | |
font-desc: Use local double values to store sizes
Closes #580
See merge request GNOME/pango!377
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Under i386 multiplying double and integer values and cast it to integer
may end up to compute the wrong value when only 387 FPU is used, because
the temporary value will be stored in a register whose precision isn't
good enough.
And so, some multiplications which are expected to produce an integer,
will actually return a truncated value, that will be eventually floored.
An example is 1.2 * 12800 that is clearly 15360.0, but will produce
15359 when casted to int in the said i386 environment.
So use a temporary double variable to ensure that we do this computation
in the double scope, before casting to int.
And this will avoid using the said register, even when using more
aggressive optimizations (as per marking the local variable volatile).
Fixes: https://gitlab.gnome.org/GNOME/pango/-/issues/580
|
|/
|
|
| |
Use GMutex to protect the thai_brk in multithreading.
|
|
|
|
|
|
|
|
|
| |
Put spaces into the previous or the next item,
depending on which one has the 'better' font.
This reduces space variations in the presence
of font fallback.
See: #249
|
| |
|
|
|
|
|
| |
Another case where using a GPtrArray instead of
a GArray of pointers is nicer.
|
|
|
|
|
| |
Use a GPtrArray instead of a GArray of pointers,
to avoid case-align warnings.
|
|
|
|
|
| |
We require harbuzz to be at least 2.0.0 for a while now.
No need to check that version at runtime.
|
|
|
|
|
|
|
|
| |
pango_attr_list_change was returning early in one
case, missing to do some necessary cleanup of the
list.
Fixes: #564
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
layout: make the height of an empty line match a regular line
Closes #577
See merge request GNOME/pango!363
|
| |
| |
| |
| |
| | |
When using line-spacing, the height of an empty line is the same as when line-spacing has zero value.
Take the value from font metrics.
|
| |
| |
| |
| |
| | |
Add some more default values, and correct the docs
for pango_layout_set_spacing wrt to the default value.
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
pangowin32: Clear cmap on finalize
See merge request GNOME/pango!318
|
| | |
| | |
| | |
| | |
| | | |
Implement copy method for format_4_cmap and format_12_cmap, and
free don't leak the struct.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The documentation for this function states that all
bidi control chars are zero width, but it was missing
the Isolate ones. Add them.
Updated tests included.
|