| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
There is more we can do here, but this is a start.
|
|
|
|
|
|
|
| |
Print out the items num_chars and char_offset, so we
can check that the char_offset implementation works.
Update affected test outputs.
|
|
|
|
|
|
|
|
|
| |
It is very annoying that gtest will dump its
random seed into the output as soon as one calls
g_test_init(). This pollutes our generated output.
Work around that by deferring the g_test_init()
call until after we've dealt with generating
output.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a char_offset field to PangoItem, compute it as part of
itemization and update it when splitting items. Keeping this
number around cuts down on the amount of list and utf8 walking
we need to do later.
We have to do some extra shenanigans to preserve abi in the
face of pango's open-coded structs, so we introduce a
PangoItemPrivate type that is used internally. On 64bit,
PangoItem has a 4 byte whole, so we can keep the size of
PangoItemPrivate the same. No such luck on 32bit.
|
|
|
|
|
|
| |
Improve the itemization code to have all
variants take the same code paths, so we
can do fixups in one place.
|
|
|
|
| |
We're going to steal one bit for private purposes.
|
|
|
|
|
| |
When annotating caret positions, render the diagonal
of the caret position rectangle as well.
|
|
|
|
|
|
| |
The intention was to flip the rectangle horizontally.
We do return a negative width, but we forgot to flip
the origin.
|
|\
| |
| |
| |
| | |
Fixes for using ligature carets in rtl
See merge request GNOME/pango!446
|
| | |
|
|\ \
| |/
| |
| |
| | |
Some fixes for ligature caret positioning in rtl
See merge request GNOME/pango!445
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Try to find a single non-mark glyph in a multi-glyph
cluster to use its ligature caret information. This
fixes situations in Arabic where you can have marks
on top of ligatures, e.g. ﻉﻭ.
|
| |
| |
| |
| |
| |
| |
| | |
The ligature caret positions returned by
hb_ot_layout_get_ligature_carets are 'unshaped' metrics.
We need to take the kerning into account that is applied
during shaping, and shows up in the glyphstring as x_offset.
|
| |
| |
| |
| | |
Still not working quite right, but getting closer.
|
| |
| |
| |
| |
| |
| | |
Cluster boundaries were cutting off the first
character of a new cluster. Not great if the
tools print out misleading information.
|
| |
| |
| |
| |
| | |
This is useful when trying to understand the output
for scripts I don't read.
|
| |
| |
| |
| |
| | |
When showing caret positions, put a little number
next to them to indicate the order.
|
|/
|
|
|
| |
Don't show carets where they don't belong.
Skip non-cursor positions.
|
|\
| |
| |
| |
| | |
Tweak the drawing
See merge request GNOME/pango!444
|
| |
| |
| |
| |
| |
| | |
What the docs were saying is no longer strictly true,
now that we are using font metrics. Update them, and
add an illustration.
|
| |
| |
| |
| |
| | |
Since the text is talking about zero-width rectangles,
show one of those, instead of a sloped caret.
|
|\ \
| |/
| |
| |
| | |
docs: Add another illustration
See merge request GNOME/pango!443
|
| |
| |
| |
| | |
Show cursor positions.
|
|/ |
|
|\
| |
| |
| |
| | |
Fixes and validation for log attrs
See merge request GNOME/pango!442
|
| | |
|
| |
| |
| |
| |
| |
| | |
This is just used in tests for now. If we decide
to make an external log attr api, we can make this
public.
|
| |
| |
| |
| |
| |
| |
| | |
We were not correctly handling overlapping segments
in all cases, with <span segment='word'>. Improve this.
Update affected tests.
|
| |
| |
| |
| |
| |
| | |
We were not correctly handling the case where
wipe out a sentence boundary after the fact,
and were leaving behind a stray sentence end.
|
| |
| |
| |
| | |
These are required for a conforming implementation.
|
|/
|
|
|
|
|
|
| |
We were not putting a line break at the end of the
text, in cases where a paragraph ends with a newline.
Enforce this in all break apis.
Update affected tests.
|
| |
|
|\
| |
| |
| |
| | |
pango-view: Don't omit the last caret position
See merge request GNOME/pango!441
|
| |
| |
| |
| | |
We want to draw n+1 dots, the last one with trailing == 1.
|
|\ \
| |/
|/|
| |
| |
| |
| | |
Use ligature caret lists
Closes #39
See merge request GNOME/pango!438
|
| |
| |
| |
| |
| |
| |
| |
| | |
Some fonts provide information about where to
place carets inside ligatures. Use it, when it
is available.
Fixes: #39
|
|\ \
| |/
|/|
| |
| | |
hyphen: Try harder to insert needed hyphens
See merge request GNOME/pango!440
|
|/
|
|
|
|
|
| |
We were forgetting to reshape runs in some situations,
leading to them not having hyphens appended. This was
happening when runs fit fully onto the end of a line
that is wrapped anyway.
|
|\
| |
| |
| |
| | |
tests: Make test-shape work like the others
See merge request GNOME/pango!439
|
| |
| |
| |
| | |
This helps with understanding clusters.
|
|/
|
|
|
|
| |
There was some extra code here that was getting
in the way of using all the dumper tests on
the same input files. Get rid of it.
|
|\
| |
| |
| |
| | |
Allow more break tailoring with attributes
See merge request GNOME/pango!424
|
| |
| |
| |
| |
| |
| |
| | |
Add attributes that let us override word and
sentence boundaries (and, indirectly, line breaks).
Tests included.
|
|\ \
| |/
|/|
| |
| | |
pango-viewer: Visualize caret positions
See merge request GNOME/pango!437
|
|/
|
|
|
|
| |
With --annotate=256, show caret positions.
This will be helpful in improving our handling
of caret positions inside clusters.
|
|\
| |
| |
| |
| |
| |
| | |
Add hyphens to log attrs
Closes #603
See merge request GNOME/pango!436
|
| | |
|
| |
| |
| |
| |
| |
| | |
Print out all the log attrs we have.
Update expected test outputs.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Replace ‧ and | with a - when we break there.
Update affected test output.
Fixes: #603
|