summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | docs: Port PangoRenderer to the new doc formatMatthias Clasen2021-03-111-381/+384
| | | | | | | | | | | | Replace gtk-doc'isms and use gi-docgen links instead.
| * | docs: Port PangoFontMap to the new doc formatMatthias Clasen2021-03-111-96/+97
| | | | | | | | | | | | Replace gtk-doc'isms and use gi-docgen links instead.
| * | docs: Port PangoFont to the new doc formatMatthias Clasen2021-03-112-643/+587
| | | | | | | | | | | | Replace gtk-doc'isms and use gi-docgen links instead.
| * | docs: Port PangoAttribute to the new doc formatMatthias Clasen2021-03-112-491/+494
| | | | | | | | | | | | Replace gtk-doc'isms and use gi-docgen links instead.
| * | docs: Port PangoLayout to the new doc formatMatthias Clasen2021-03-112-1791/+1766
| | | | | | | | | | | | Replace gtk-doc'isms and use gi-docgen links instead.
| * | docs: Port PangoContext to the new doc formatMatthias Clasen2021-03-111-314/+323
| | | | | | | | | | | | Replace gtk-doc'isms and use gi-docgen links instead.
| * | docs: Convert the pangocairo section to pango_cairo.mdMatthias Clasen2021-03-114-132/+133
| | |
| * | docs: Convert bidi and vertical sections to pango_bidi.mdMatthias Clasen2021-03-115-74/+60
| | |
| * | docs: Convert fonts section to pango_fonts.mdMatthias Clasen2021-03-114-13/+67
| | |
| * | docs: Convert markup and attributes docs to pango_markup.mdMatthias Clasen2021-03-116-503/+186
| | |
| * | docs: Convert rendering section to pango_rendering.mdMatthias Clasen2021-03-114-12/+39
| | |
| * | Remove remnants of gtk-docMatthias Clasen2021-03-117-1519/+0
| | |
| * | Generate Pango API docs with gi-docgenMatthias Clasen2021-03-119-85/+150
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stop using gtk-doc, and switch to gi-docgen. The gi-docgen tool generates API references through the introspection data, which has various benefits: - it does not parse C code - it does not generate and run C code to introspect types at build time - it does not present a different API from the one we're exporting Additionally, gi-docgen: - does not generate DocBook XML in order to generate HTML - does not go through xsltproc - parses proper Markdown Which makes it markedly faster than gtk-doc has ever been.
| * | Add configuration for gi-docgenMatthias Clasen2021-03-116-0/+225
| | | | | | | | | | | | | | | Add the toml files that will be used to generate docs, one for each gir file.
| * | Add gi-docgen as a subprojectMatthias Clasen2021-03-111-0/+6
| | | | | | | | | | | | | | | While we're developing gi-docgen it's better to have it as part of our build.
| * | docs: Add pango logoMatthias Clasen2021-03-111-0/+0
| | | | | | | | | | | | This will be used in the future.
| * | docs: Move PangoRenderer docs to the right fileMatthias Clasen2021-03-114-13/+14
| | |
| * | docs: Replace lots of vestigial xml markupMatthias Clasen2021-03-1132-263/+221
| | | | | | | | | | | | | | | We want to use pure markdown, since docbook is going away as the intermediate format.
| * | docs: Make context section ids matchMatthias Clasen2021-03-116-12/+12
| | | | | | | | | | | | | | | Doing this makes g-ir-scanner pick up the long description, which is more useful than the struct docs.
| * | docs: Clean up fontmap docsMatthias Clasen2021-03-111-9/+1
| | | | | | | | | | | | | | | Remove obsolete implementation details from the PangoFontMap struct docs.
| * | docs: Move layout docs into the long descriptionMatthias Clasen2021-03-113-9/+8
| | | | | | | | | | | | | | | g-ir-scanner picks the long description over the struct docs, when the id matches.
| * | docs: Remove xml formatting from PangoLayoutMatthias Clasen2021-03-111-9/+8
|/ / | | | | | | This is in preparation for going to pure markdown.
* | Merge branch 'markup-parse-fixes' into 'master'Matthias Clasen2021-03-0311-37/+94
|\ \ | | | | | | | | | | | | Markup parse fixes See merge request GNOME/pango!292
| * | markup tests: Add tests for parsing accelsmarkup-parse-fixesMatthias Clasen2021-03-027-0/+60
| | | | | | | | | | | | | | | Add tests that test some of the corner cases handled in the previous commit.
| * | markup-parse: Make generating files more convenientMatthias Clasen2021-03-021-4/+4
| | | | | | | | | | | | | | | Don't print extraneous output when we are generating an .expected file.
| * | markup: Fix two bugsMatthias Clasen2021-03-021-30/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The docs state that all chars marked with the accel marker get an underline. But we were only underlining the first in each text chunk. Second, if an underline appears at the end of a text chunk, or at the end of the text, we would just eat it, which is unexpected.
| * | markup tests: Pass accel_marker='_'Matthias Clasen2021-03-021-1/+8
| | | | | | | | | | | | | | | | | | And print out the accel_char if we get one back. This will let us add tests for accel functionality.
| * | markup tests: Remove an _Matthias Clasen2021-03-022-2/+2
| |/ | | | | | | | | This is in preparation for adding some tests that will check accel handling.
* | Merge branch 'fix-attribute-splicing' into 'master'Matthias Clasen2021-03-032-4/+41
|\ \ | |/ |/| | | | | Fix attribute splicing See merge request GNOME/pango!287
| * Fix a corner-case of pango_attr_list_splicefix-attribute-splicingMatthias Clasen2021-02-172-4/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When the 'other' list contains attributes that are unlimited or exceed the range given to pango_attr_list_splice, those attributes were 'leaking' out of the range. The visible effect of this is that the underline of preedit text extends outside the preedit in some GTK entries. Fix this by clipping the inserted attributes to the range. The documentation is not very explicit about this, but I believe this is the expected behavior. Tests included.
* | Merge branch 'fontmap-thread-fix' into 'master'Matthias Clasen2021-02-241-0/+7
|\ \ | | | | | | | | | | | | | | | | | | fc: Fix an ordering issue Closes #537 See merge request GNOME/pango!290
| * | fc: Fix an ordering issuefontmap-thread-fixMatthias Clasen2021-02-241-0/+7
|/ / | | | | | | | | | | | | | | | | | | | | | | | | With the recently introduced threading for fontconfig calls, we introduced an ordering issue where the fontmap may die before an outstanding thread returns, and then the code that unrefs the pattern object tries to remove it from the fontmap cache. Prevent that by giving each thread a strong ref on the fontmap while it runs. Fixes: #537
* | Merge branch 'speed-up-format-filtering' into 'master'Matthias Clasen2021-02-221-40/+281
|\ \ | | | | | | | | | | | | Speed up font sorting See merge request GNOME/pango!221
| * | fontconfig: Add some trace marksspeed-up-format-filteringMatthias Clasen2021-02-221-3/+41
| | | | | | | | | | | | | | | Add sysprof marks around the expensive fontconfig calls, and for when we are waiting on them.
| * | Move FcInit call to a threadMatthias Clasen2021-02-221-0/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With a big fontconfig configuration, FcInit takes some time (60-100ms on my system). Doing this work off the main thread can potentially avoid blocking other work. To take advantage of this, GTK calls pango_cairo_font_map_get_default() early to initiate the creation of a fontmap, thereby triggering the FcInit() call.
| * | Move FcFontMatch and FcFontSort calls to a threadMatthias Clasen2021-02-221-35/+152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fontconfig is thread-safe, so we can do calls that can take several milliseconds to complete in a thread. This patch does that for FcFontSetMatch and FcFontSetSort. It is a win, at least for FcFontSetSort, since it reduces the time that the main thread spends in pango_fc_patterns_get_font_pattern for i > 0 from around 10 to 6 milliseconds.
| * | Use FcFontSetList instead of FcFontListMatthias Clasen2021-02-221-5/+6
| | | | | | | | | | | | | | | | | | | | | We have filtered-by-format lists of fonts available now, so we should use them to ensure we always operate on the same set of fonts. Also, fix another case of passing NULL for the config.
| * | fc: Only do filtering by format onceMatthias Clasen2021-02-221-23/+58
|/ / | | | | | | | | | | The fontconfig configuration changes rarely, so we can avoid unnecessary work by only doing the filtering by supported formats once, and keeping the result.
* | Merge branch 'fix-FcConfig-uses' into 'master'Matthias Clasen2021-02-221-2/+2
|\ \ | |/ |/| | | | | Fix FcConfig uses See merge request GNOME/pango!288
| * Use the right FcConfig for FcFontListfix-FcConfig-usesMatthias Clasen2021-02-221-1/+1
| | | | | | | | | | | | | | | | | | Passing NULL for a config argument in a fontconfig api means we are using the default configuration, which may be different from the one the fontmap is supposed to be using. Fix an instance of this in pango_fc_face_list_sizes.
| * Use the right FcConfig for FcRenderPrepareMatthias Clasen2021-02-221-1/+1
|/ | | | | | | | | Passing NULL for a config argument in a fontconfig api means we are using the default configuration, which may be different from the one the fontmap is supposed to be using. Fix an instance of this in pango_fc_fontset_load_next_font.
* Merge branch 'ci-fixes' into 'master'Matthias Clasen2021-02-165-9/+12
|\ | | | | | | | | Ci fixes See merge request GNOME/pango!286
| * ci: ignore leaks in libxml2ci-fixesMatthias Clasen2021-02-161-0/+1
| |
| * Try to fix thai break testcaseMatthias Clasen2021-02-162-7/+6
| | | | | | | | | | Remove the dashes that cause the runs to break, and seem to be causing issues on both Debian and newer Fedora.
| * ci: Use the new Fedora imageMatthias Clasen2021-02-161-1/+1
| |
| * ci: Update Fedora imageMatthias Clasen2021-02-161-1/+4
|/ | | | | Switch to Fedora 33, and add the few extra python packages that gi-docgen needs.
* Merge branch 'gir-fixes' into 'master'Matthias Clasen2021-02-162-7/+9
|\ | | | | | | | | Gir fixes See merge request GNOME/pango!285
| * Leave pango-version-macros.h out of the girgir-fixesMatthias Clasen2021-02-151-2/+3
| | | | | | | | | | PANGO_VERSION_MIN_REQUIRED is a build utility, and is not useful as a constant in the gir. Leave it out.
| * Include version macros in the girMatthias Clasen2021-02-151-2/+2
| | | | | | | | | | PANGO_MAJOR/MINOR/MICRO_VERSION are useful to have in the gir.
| * Trick g-ir-scanner some moreMatthias Clasen2021-02-151-2/+2
| | | | | | | | | | Add casts to get some defined constants to have the right type in the gir. The games we play...