summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add an option to pango-viewjustify-last-lineMatthias Clasen2021-08-101-2/+6
| | | | | Give pango-view a --justify-last-line option to test the new PangoLayout option for this.
* Add pango_justify_last_lineMatthias Clasen2021-08-103-3/+62
| | | | | | | Add a way to justify the last line in a justified paragraph. Fixes: #74
* Add some forgotten documentationMatthias Clasen2021-08-101-0/+1
|
* Merge branch 'cursor-move-fixes' into 'main'Matthias Clasen2021-08-092-20/+86
|\ | | | | | | | | Fix corner cases around line ends See merge request GNOME/pango!401
| * Add more tests for move-visuallycursor-move-fixesMatthias Clasen2021-08-091-4/+48
| | | | | | | | | | These cover more of the corner cases fixed in the previous commits.
| * Fix more corner cases around line endsMatthias Clasen2021-08-091-4/+18
| | | | | | | | | | | | We were miscounting the cursor positions in a line, causing us to jump down to the next line when moving backwards towards the start of the line.
| * Fix corner cases around line endsMatthias Clasen2021-08-092-12/+20
| | | | | | | | | | | | | | | | | | | | pango_layout_index_to_line_and_extents needs to return a run rect even if the line has no non-empty runs. Failing to do so was causing cursors at the end of lines to have a height of 0 or 1, which is not what we want. Add a testcase.
* | Merge branch 'ferdnyc-main-patch-08758' into 'main'Matthias Clasen2021-08-091-17/+35
|\ \ | |/ |/| | | | | CODING_STYLE: Fence code samples, fix tab breakage See merge request GNOME/pango!400
| * CODING_STYLE: Fence code samples, fix tab breakageFeRD (Frank Dana)2021-08-091-17/+35
| |
* | Merge branch 'win32-fixes' into 'main'Matthias Clasen2021-08-094-4/+39
|\ \ | | | | | | | | | | | | | | | | | | Attempt to fix some Win32-related issues Closes #583 and #578 See merge request GNOME/pango!399
| * | pangowin32-fontmap.c: Look harder for the matching fontChun-wei Fan2021-08-091-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we look up our font from the list of fonts that we enumerated from the system, follow what the CoreText backend does, so that if the font gravity in the font description is getting in our way to find the font, look for it again without the gravity. This will enable us to find the font that really exists but was not found due to FontDescription attributes. Partially fixes #583.
| * | testmisc.c: Fix builds without FontConfig/PangoFT2Chun-wei Fan2021-08-091-0/+7
| | | | | | | | | | | | | | | Some tests used items from PangoFT2, which may not have been enabled on platforms where that was optionally built.
| * | pango/shape.c: Use the former rounding code as neededChun-wei Fan2021-08-091-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The careful rounding code that was brought back as a result of commit d4356779 only had effect if we are using a backend that supported font hinting, so on other backends, use the former rounding code that was dropped in favor of the careful rounding code that unfortunately did not apply for all backends. Should fix #578.
| * | pango-markup.c: Fix buildChun-wei Fan2021-08-091-1/+1
| | | | | | | | | | | | The strchr() call's second parameter is a char, not a string.
* | | Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2021-08-097-4/+24
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | docs: Cosmetics Closes #77 See merge request GNOME/pango!398
| * | docs: Add an example for split cursorsMatthias Clasen2021-08-096-1/+20
| | | | | | | | | | | | | | | | | | | | | Show how weak and strong cursors look in practice. Fixes: #77
| * | NEWS: UpdatesMatthias Clasen2021-08-081-0/+2
| | |
| * | docs: CosmeticsMatthias Clasen2021-08-081-3/+2
| | | | | | | | | | | | No need to link a function to itself.
* | | Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2021-08-095-3/+8
|\ \ \ | |/ / | | / | |/ |/| docs: Add one more dark mode image See merge request GNOME/pango!397
| * docs: Add one more dark mode imageMatthias Clasen2021-08-085-3/+8
|/
* Merge branch 'line-height-attribute' into 'main'Matthias Clasen2021-08-096-17/+214
|\ | | | | | | | | Implement css-like line-height See merge request GNOME/pango!390
| * Adapt testsline-height-attributeMatthias Clasen2021-08-081-2/+10
| | | | | | | | | | | | Now that we are using run extents for cursor positions, the vertical extents aren't necessarily constant across a line anymore. Adapt our assertions.
| * Fix up logical rectangle reportingMatthias Clasen2021-08-081-24/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * layout: Handle line-height attributesMatthias Clasen2021-08-081-1/+30
| | | | | | | | | | | | | | | | | | 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 line-height attributesMatthias Clasen2021-08-085-0/+108
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2021-08-092-3/+5
|\ \ | |/ |/| | | | | docs: Cosmetic change See merge request GNOME/pango!396
| * Specify deprecation detailsMatthias Clasen2021-08-082-2/+2
| | | | | | | | | | Unversioned deprecations come out odd in gi-docgen. Add a version to avoid that.
| * docs: Cosmetic changeMatthias Clasen2021-08-081-1/+3
| | | | | | | | Shorten the first line of the PangoBidiType docs.
* | Merge branch 'layout-docs' into 'main'Matthias Clasen2021-08-0817-23/+68
|\ \ | | | | | | | | | | | | docs: Fix up deps for images See merge request GNOME/pango!395
| * | docs: Cosmetic fixeslayout-docsMatthias Clasen2021-08-082-12/+13
| | |
| * | docs: Add some more imagesMatthias Clasen2021-08-089-0/+22
| | | | | | | | | | | | Add a visual example of bidi reordering.
| * | docs: Add a dark mode variant of some imagesMatthias Clasen2021-08-089-6/+16
| | |
| * | docs: Improve image placementMatthias Clasen2021-08-081-5/+4
| | | | | | | | | | | | Move the vertical text example up, in the bidi docs.
| * | gravity: Correct the documentationMatthias Clasen2021-08-081-2/+2
| | | | | | | | | | | | | | | There was a cw vs ccw mixup here. Adding example images made it obvious.
| * | docs: Fix up deps for imagesMatthias Clasen2021-08-081-0/+13
|/ / | | | | | | We have two lists to keep in sync :(
* | Merge branch 'layout-docs' into 'main'Matthias Clasen2021-08-088-4/+12
|\ \ | | | | | | | | | | | | docs: More details See merge request GNOME/pango!394
| * | docs: More detailsMatthias Clasen2021-08-088-4/+12
|/ / | | | | | | Add some visualizations of gravity.
* | Merge branch 'layout-docs' into 'main'Matthias Clasen2021-08-088-1/+17
|\ \ | | | | | | | | | | | | docs: Add more details See merge request GNOME/pango!393
| * | docs: Add more detailsMatthias Clasen2021-08-088-1/+17
|/ / | | | | | | | | Add some visualization of alignment and justification to the PangoLayout docs.
* | Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2021-08-083-4/+12
|\ \ | |/ | | | | | | docs: Some clarifications See merge request GNOME/pango!392
| * docs: More detailsMatthias Clasen2021-08-081-0/+3
| | | | | | | | Add a cross-reference to the PangoAlignment docs.
| * docs: Some clarificationsMatthias Clasen2021-08-082-4/+9
|/ | | | | Add some more detail around baseline-to-baseline distances.
* NEWS: UpdatesMatthias Clasen2021-08-081-0/+10
|
* Merge branch 'bidi-revenge' into 'main'Matthias Clasen2021-08-085-199/+227
|\ | | | | | | | | | | | | Reimplement pango_layout_move_cursor_visually Closes #587, #585, and #157 See merge request GNOME/pango!389
| * Tweak the docsbidi-revengeMatthias Clasen2021-08-081-7/+6
| | | | | | | | | | Make the docs for pango_layout_move_cursor_visually a bit more clear.
| * Add multi-line tests for move-cursorMatthias Clasen2021-08-081-0/+63
| | | | | | | | | | Test the line end handling of pango_layout_move_cursor_visually.
| * Reimplement pango_layout_move_cursor_visuallyMatthias Clasen2021-08-084-174/+110
| | | | | | | | | | | | | | | | 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 improve pango_layout_get_cursor_posMatthias Clasen2021-08-081-9/+27
| | | | | | | | | | Try to disambiguate run boundaries better. Not sure this works as intended, yet.
| * Add tests for pango_layout_move_cursor_visuallyMatthias Clasen2021-08-081-9/+14
| | | | | | | | Some of these currently fail.
| * Small correction to test-layoutMatthias Clasen2021-08-061-1/+8
| | | | | | | | | | We need to apply trailing properly, by skipping characters.