summaryrefslogtreecommitdiff
path: root/pango
Commit message (Collapse)AuthorAgeFilesLines
* Apply 1 suggestion(s) to 1 file(s)survive-without-fontsMiloš Komarčević2022-04-111-1/+1
|
* layout: Try harder to survive without fontsMatthias Clasen2022-04-081-1/+6
| | | | | | | | No great typography can be expected without fonts, but we should try not to crash, since this situation can apparently happen on Windows. Fixes: #680
* Merge branch 'fix-rtl-cursor-move' into 'main'Matthias Clasen2022-03-311-2/+2
|\ | | | | | | | | | | | | Fix move pango_layout_move_cursor_visually Closes #679 See merge request GNOME/pango!608
| * Fix move pango_layout_move_cursor_visuallyfix-rtl-cursor-moveMatthias Clasen2022-03-311-2/+2
| | | | | | | | | | | | | | | | | | | | When moving the cursor off the paragraph end to the left in RTL text, we were moving to the previous line, and not to the next line, as expected. Test included. Fixes: #679
* | Coretext: fix clang build failure.John Ralls2022-03-221-3/+0
|/ | | | | Recent versions of clang notice that pango_core_text_fontset_load_font's `key` local variable isn't used and errors out. Remove it.
* AVoid a use-after-free in pango_attr_list_changeMatthias Clasen2022-03-181-0/+3
| | | | | | | | | This was showing up as crashes in pitivi and inkscape. The added test does not crash, but it does produce the wrong result without the fix. Fixes: #678
* Maintain order in pango_attr_list_changeMatthias Clasen2022-03-181-0/+3
| | | | | | | When PangoAttrList was changed to use an array, we lost the code that maintained non-decreasing order in pango_attr_list_change. Bring it back, and add a test for this.
* Drop the hb-glib dependency againMatthias Clasen2022-03-091-2/+1
| | | | | | It is not really needed. Fixes: #674
* Meson: Clean up HarfBuzz searchChun-wei Fan2022-02-211-12/+4
| | | | | | | | | | | Pango 1.50.x and later require a HarfBuzz version that is buildable via Meson, so we can just use the standard dependency() call for HarfBuzz for all builds. This means that we can drop all the items where we search for HarfBuzz manually. Also remove the stray HarfBuzz items that are no longer used.
* layout: Handle baselinesbaseline-handlingMatthias Clasen2022-02-171-2/+64
| | | | | | | During post-processing for lines, take into account the baselines for each run, and shift them vertically to align them on the dominant baseline.
* pango/pango-version-macros.h: Mention correct version check macroGuido Günther2022-01-271-1/+1
| | | | | Pango names it PANGO_VERSION_CHECK not PANGO_CHECK_VERSION (like glib). Fix the one incorrect mention in the documentation comment.
* docs: Fix a typoMatthias Clasen2022-01-211-1/+1
|
* Fix allow_breaks handlingfix-allow-breaksMatthias Clasen2022-01-201-3/+3
| | | | | | | | | handling of segmentation attributes can introduce line breaks, after we removed them in allow_breaks handling. Change the order to handle allow_breaks last, so this doesn't happen. Update affected tests.
* Fix a g_ascii_formatd callfix-asciid-callMatthias Clasen2022-01-181-1/+1
| | | | | | | | | | | We were passing a format specifier that starts with ' ', which some implementations of that API don't like. This change removes an extraneous space from the output. Update affected tests. Fixes: #659
* Check for fontmapsno-fontmap-no-funMatthias Clasen2022-01-141-0/+2
| | | | | | | To avoid trivialities, check that our context has a fontmap, at a strategic place. Fixes: #658
* docs: Fix a typoMatthias Clasen2022-01-141-3/+3
|
* Deprecate pango_coverage_ref/unrefdeprecate-coverage-refMatthias Clasen2022-01-102-3/+7
| | | | These are just wrappers of g_object_ref/unref.
* Drop uses of pango_coverage_ref/unrefMatthias Clasen2022-01-107-13/+13
| | | | Just use g_object_ref/unref.
* Add version macros for 1.52Matthias Clasen2022-01-101-0/+24
|
* fonts: Fix get_face default implMatthias Clasen2022-01-101-1/+1
|
* Add a default implementation for list_facesMatthias Clasen2022-01-101-0/+13
|
* Merge branch 'attrlist-splice' into 'main'Matthias Clasen2022-01-101-3/+17
|\ | | | | | | | | | | | | Clarify pango_attr_list_splice docs Closes #653 See merge request GNOME/pango!574
| * Reinstate previous behavior or pango_attr_list_spliceattrlist-spliceMatthias Clasen2022-01-071-3/+17
| | | | | | | | | | | | | | | | | | | | If gap is zero, don't limit the inserted attributes; that does not make sense. Spell out the different use cases in the docs. Testcase included. Fixes: #653
| * Clarify pango_attr_list_splice docsMatthias Clasen2022-01-071-1/+1
| | | | | | | | | | Make it explicit that the spliced-in attributes are limited to the the 'gap'.
* | g-i: add since annotations to enum membersbilelmoussaoui/giBilal Elmoussaoui2022-01-082-14/+8
|/
* Avoid an uninitialized variable warningMatthias Clasen2022-01-061-1/+4
| | | | Fixes: #650
* serializer: Serialize non-ASCII correctly if char is unsignedSimon McVittie2022-01-041-1/+1
| | | | | | | | | | | | | If char is unsigned, the first byte of a non-trivial UTF-8 sequence will be 0x80 or higher, instead of being negative. In this case we need to process it as UTF-8, instead of printing only the first byte and then skipping to the next UTF-8 character. char is usually signed on x86 and some other architectures, but not on the ARM or PowerPC families, among others. Resolves: https://gitlab.gnome.org/GNOME/pango/-/issues/652 Signed-off-by: Simon McVittie <smcv@debian.org>
* layout: Make sloped carets work betterMatthias Clasen2022-01-031-1/+4
| | | | | | | | When the font matrix has uneven scales, we need to factor that into the slope that we get from the font metrics. Tested with a condensed italic Cantarell.
* Merge branch 'matthiasc/for-main' into 'main'Matthias Clasen2022-01-021-0/+1
|\ | | | | | | | | Add a test for letterspacing See merge request GNOME/pango!570
| * Turn off hlig too when letterspacingMatthias Clasen2022-01-021-0/+1
| | | | | | | | Just for completeness.
* | Pass synthetic slant to harfbuzzsynthetic-slantMatthias Clasen2022-01-021-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | When our font matrix includes a slant, pass that information to HarfBuzz, so it can adjust its mark positioning, metrics like caret slope, etc. This commit corrects the code that pulls the font matrix out of fontconfig to properly take the flipped y axis between fontconfig and pango into account. Requires new api in HarfBuzz > 3.2
* | Add pango_matrix_get_slant_ratioMatthias Clasen2022-01-022-0/+36
|/ | | | | Add API to extract the slant ratio from a PangoMatrix. Tests included.
* font: Documentation additions and clarificationsMatthias Clasen2022-01-011-3/+9
| | | | | Face names are not actually guaranteed to be unique, so don't say that.
* fontmap: Improve docs slightlyMatthias Clasen2022-01-011-0/+5
| | | | Mention GListModel.
* CosmeticsMatthias Clasen2022-01-011-1/+1
|
* itemize: Try harder to avoid NULL fontsMatthias Clasen2021-12-251-3/+5
| | | | | Always fall back to the base font if the fontset has no coverage.
* tracing: Fix the definesMatthias Clasen2021-12-252-8/+20
| | | | | | | | We want to define pango_trace_mark to nothing. This reveals that we've never compiled these calls out before, and there are some warnings to be fixed in that case.
* Install pango-fontset-simple.hMatthias Clasen2021-12-251-0/+1
|
* fontsetsimple: Make privately accessiblefontset-cosmeticsMatthias Clasen2021-12-242-14/+45
| | | | This will be used in the future
* Drop pango-fontset-private.hMatthias Clasen2021-12-249-43/+8
| | | | This was just an empty header.
* fontsetsimple: Simplify coverage handlingMatthias Clasen2021-12-231-55/+17
| | | | | | This functionality is basically unused. Lets not keep an array of coverages around for it.
* Split off PangoFontsetSimpleMatthias Clasen2021-12-236-291/+354
| | | | Put PangoFontsetSimple into its own files.
* Make missing space smallersmaller-spaceMatthias Clasen2021-12-221-1/+1
| | | | | | | The Microsoft paper I was citing actually recommends 1/4 em for ASCII space. Make it so... Update affected tests.
* Use a better size for missing spaceMatthias Clasen2021-12-211-39/+4
| | | | | | | | | | Follow the Microsoft Typography recommendations from https://docs.microsoft.com/en-us/typography/develop/character-design-standards/whitespace and use half of an em for missing space. Update affected tests. Fixes: #647
* fc: Implement get_absolute_sizeMatthias Clasen2021-12-211-0/+14
| | | | No surprises here.
* Add a private api to get the font sizeMatthias Clasen2021-12-212-1/+21
| | | | | | | | Add a private vfunc to get the (absolute) size of a font. This default implementation just pulls it out of the font description, but we can do implement this cheaper without copying the font description.
* CosmeticsMatthias Clasen2021-12-191-9/+10
| | | | | Rename some variables, so we actually know what these matrices are.
* Fix line height with emulated small capsfix-small-caps-line-heightMatthias Clasen2021-12-194-14/+40
| | | | | | | | When we change font scale for emulating small caps, keep the original font around in the analysis, and use it for calculating the run height. Fixes: #622
* Add some private apiMatthias Clasen2021-12-192-0/+63
| | | | | | Add some api to let us store another font in a PangoAnalysis. This will be used in the following commits.
* Improve line width accountingMatthias Clasen2021-12-181-1/+1
| | | | | | | We want to avoid trading chars for hyphens in the margin beyond the set width. Fixes: #646