summaryrefslogtreecommitdiff
path: root/pango
Commit message (Collapse)AuthorAgeFilesLines
* fontconfig: Ignore woff fontswoff-offMatthias Clasen2021-07-091-1/+9
| | | | | | | | harfbuzz creates a face, but doesn't seem to find any glyphs in woff fonts, so filter them out. Sadly, fontfonfig does not have useful format information about this, so we need to crudely filter by filename.
* break: Fix handling of tag sequencestests-and-fixesMatthias Clasen2021-07-071-0/+7
| | | | | | | | Correctly classify tag characters as Grapheme_Extend, so that we don't end up putting grapheme boundaries in the middle of tag sequences. Includes a test.
* layout: Zero out log attrsMatthias Clasen2021-07-061-1/+1
| | | | This makes tests more reproducible.
* layout: Add a missing annotationMatthias Clasen2021-07-061-1/+1
| | | | pango_layout_get_tabs returns a copy.
* layout: Document default valuesMatthias Clasen2021-07-061-0/+8
| | | | | Since these are not properties, their default values aren't documented anywhere. Until now.
* layout: Correct a g_return_val_if_failMatthias Clasen2021-07-061-1/+1
| | | | | The convention is to return the initial value if the 'this' check fails. Correct this for auto_dir.
* layout: Explicitly initialize single_paragraphMatthias Clasen2021-07-061-0/+1
| | | | This makes it obvious what the initial value is.
* layout: Remove an overeager assertionMatthias Clasen2021-07-061-5/+3
| | | | | | | | | | pango_layout_get_direction contained an assertion that would be hit when just iterating over all chars in the text of the layout (it gets hit when you get to the final newline). Remove the assertion, so that this function is less of a trap.
* CosmeticsMatthias Clasen2021-07-061-2/+2
|
* renderer: Fix averaging of strikethroughsfix-strikethrough-averagingMatthias Clasen2021-07-051-7/+8
| | | | | | | | | | | | | | In 85bdfead1b36945db251 I made consecutive runs average their strikeout positions, but I did handle the accounting properly, causing previous runs to influence the strikeout of later runs, if we have to draw them separately (due to color change). It would be nicer to average even across color changes and draw the line continuously in that case as well, but that would require two passes over the runs. Fixes: #574
* docs: Add some details for PangoWrapimprove-wrap-docsMatthias Clasen2021-07-021-0/+5
| | | | | | This clarifies things for myself. Fixes: #573
* Use an enum instead of numeric values for fc_initializedFederico Mena Quintero2021-07-011-5/+16
|
* Use atomic reference counting for PangoFcPatternsFederico Mena Quintero2021-07-011-18/+3
| | | | | | | There was a data race in accessing the ref_count of this struct; now with g_atomic_rc_box it's done properly across threads. Fixes https://gitlab.gnome.org/GNOME/pango/-/issues/571
* Extract function to free the contents of a PangoFcPatternsFederico Mena Quintero2021-07-011-7/+14
|
* fc: Drop a broken optimizationdrop-broken-optimizationMatthias Clasen2021-07-011-3/+0
| | | | | | | | | We were trying to cut short the wait for FcInit in pango_fc_font_map_set_config. But there was a thinko: while it is true that the fontmap which had set_config called on it does not need to wait for FcInit anymore, other threads fontmaps still do. Instead of making this more complicated, just drop the optimization.
* Clarify docs of pango_fc_fontmap_get_configget-config-docsMatthias Clasen2021-07-011-1/+2
| | | | | | | The return value is owned by Pango. transfer=none doesn't really work for non-GObject types, so just spell it out. Fixes: #572
* Merge branch 'bring-back-better-rounding' into 'master'Matthias Clasen2021-06-281-4/+73
|\ | | | | | | | | | | | | shape: Bring back careful rounding code Closes #562 See merge request GNOME/pango!344
| * shape: Bring back careful rounding codebring-back-better-roundingMatthias Clasen2021-06-271-4/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we added the round-glyph-positions option in c43da2d3 and b5634799, we lost some code that was careful to round in device coordinates. The reason we lost it is that the rounding needs fontconfig- specific data that is only available in the backend, and the rounding now happens in the frontend. Bringing it back is annoying, since we've run out of vfunc slots to get info from the backend. This commit works around that limitation in a hacky way. Fixes: #562
* | Add missing bidi typestest-coverageMatthias Clasen2021-06-282-4/+15
| | | | | | | | | | The api is deprecated, but it is very ugly to randomly miss a few values here. Just add them.
* | tabs: CosmeticsMatthias Clasen2021-06-281-1/+1
| |
* | utils: Make pango_version_check more preciseMatthias Clasen2021-06-281-0/+2
| | | | | | | | | | The expectation of version comparisons is that major versions have to match exactly.
* | matrix: CosmeticsMatthias Clasen2021-06-281-6/+7
| |
* | markup: Don't accept attributes on <markup>Matthias Clasen2021-06-281-0/+1
| | | | | | | | Better to enforce this.
* | markup: Separate out all casesMatthias Clasen2021-06-281-1/+6
| | | | | | | | | | | | No point in having a few attributes handled in the default case. Just split them all by the first char.
* | markup: Save a few linesMatthias Clasen2021-06-281-20/+4
|/ | | | pango_markup_parser_new_internal can't really fail.
* gravity: Update script properties tablescript-propertiesMatthias Clasen2021-06-271-1/+112
| | | | | | | | Our script properties table was last updated in the Unicode 5.0 era. Add all the scripts up to Unicode 13. For the properties, I used the same horizontal direction as harfbuzz, and left the other properties at their default values.
* gravity: Correct direction for Kharoshthi scriptMatthias Clasen2021-06-271-1/+1
| | | | Harbuzz treats this script as RTL, so we should too.
* Convert a stray DocBook ulink into MarkdownFederico Mena Quintero2021-06-141-1/+1
|
* Link to the CSS font-feature-settings docs for pango_attr_font_features_newFederico Mena Quintero2021-06-141-1/+5
| | | | Fixes https://gitlab.gnome.org/GNOME/pango/-/issues/565
* docs: Link syntax fixesdocs-link-fixesMatthias Clasen2021-05-259-20/+20
| | | | | Now that gi-docgen warns about link syntax errors, we can find and fix them.
* Explicitly preserve unlimited attributesMatthias Clasen2021-05-231-18/+24
| | | | | When calling pango_attr_list_update(), we must not change the limits or attributes that are unlimited.
* Merge branch 'doc-fixes' into 'master'Matthias Clasen2021-05-232-2/+2
|\ | | | | | | | | docs: Fix link syntax in a few places See merge request GNOME/pango!337
| * docs: Fix link syntax in a few placesdoc-fixesMatthias Clasen2021-05-232-2/+2
| |
* | Merge branch 'fix-attr-list-update' into 'master'Matthias Clasen2021-05-231-1/+2
|\ \ | | | | | | | | | | | | | | | | | | Avoid unsigned int pitfalls Closes #561 See merge request GNOME/pango!336
| * | Avoid unsigned int pitfallsMatthias Clasen2021-05-231-1/+2
| |/ | | | | | | | | | | | | | | | | When we tried to catch attr list overflow in 895759096309e7c, we overlooked that add - remove can be negative, leading to unexpected results. Avoid this case. Fixes: #561
* | docs: Add a missing backtickMatthias Clasen2021-05-211-1/+1
|/
* docs: Reduce redundancydocs-cleanupsMatthias Clasen2021-05-2018-74/+56
| | | | | | Remove a boatload of "or %NULL" from nullable parameters and return values. gi-docgen generates suitable text from the annotation that we don't need to duplicate.
* docs: Convert gtk-doc syntax leftoversdocs-cleanupMatthias Clasen2021-05-1957-1417/+1475
| | | | | Remove leftovers like #Type, reduce indentations to avoid markdown block quotes, etc.
* introspection: Stop using allow-noneMatthias Clasen2021-05-1914-82/+82
| | | | | The allow-none annotation has been deprecated for a long time already. Instead use optional and nullable everywhere.
* fc: Don't use GTask for threadingfix-lilypond-leakMatthias Clasen2021-05-101-31/+24
| | | | | | | | | | GTask requires a running mainloop, otherwise we end up leaking task objects and their associated data. This is not a problem in GTK applications, but it does show up in batch operation, such as with lilypond. To avoid this problem, use plain threads.
* Merge branch 'matthiasc/for-master' into 'master'Matthias Clasen2021-05-101-4/+6
|\ | | | | | | | | test-break: Make help output work again See merge request GNOME/pango!332
| * Fix a thinkoMatthias Clasen2021-05-101-4/+6
| | | | | | | | | | | | | | | | | | The commit message for d476d2a944500f8553 said "word boundaries", but the code checked for line breaks. That was wrong, since it also made hyphens disappear at SHY, where we very much want them. Update affected tests.
* | Merge branch 'fix-sentence-breaks' into 'master'Matthias Clasen2021-05-101-3/+16
|\ \ | |/ |/| | | | | break: Fix an inconsistency with sentence breaks See merge request GNOME/pango!330
| * break: Fix an inconsistency with sentence breaksfix-sentence-breaksMatthias Clasen2021-05-091-3/+16
| | | | | | | | | | | | | | | | | | | | | | When we retroactively remove a sentence boundary because of rule SB8, we were not cleaning up the sencence_start/end markers that have already been derived from it. This can be seen in urls like http://www.unicode.org/reports/tr29, where we don't have any sentence boundaries, but we leave a stray sentence_start/end at the first / after ".org".
* | Merge branch 'add-null-checkds' into 'master'Matthias Clasen2021-05-093-3/+6
|\ \ | | | | | | | | | | | | | | | | | | Add some NULL checks Closes #268 See merge request GNOME/pango!328
| * | Add some NULL checksadd-null-checkdsMatthias Clasen2021-05-093-3/+6
| |/ | | | | | | | | | | | | Originally suggested by Philipp Withnall in https://bugzilla.gnome.org/show_bug.cgi?id=778655 Fixes: #268
* | Merge branch 'fix-ellipsized-line-width' into 'master'Matthias Clasen2021-05-091-2/+5
|\ \ | | | | | | | | | | | | | | | | | | Ensure ellipsized lines have the right width Closes #24 See merge request GNOME/pango!326
| * | Ensure ellipsized lines have the right widthfix-ellipsized-line-widthMatthias Clasen2021-05-081-2/+5
| |/ | | | | | | | | | | | | Otherwise, ellipsized text will 'vibrate', as the size changes. Fixes: #24
* | Merge branch 'fix-layout-line-height' into 'master'Matthias Clasen2021-05-091-2/+2
|\ \ | | | | | | | | | | | | | | | | | | Make pango_layout_line_get_height work Closes #487 See merge request GNOME/pango!327
| * | Make pango_layout_line_get_height workfix-layout-line-heightMatthias Clasen2021-05-081-2/+2
| |/ | | | | | | | | | | | | We were just never setting the height. Ouch! Test included. Fixes: #487