summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add a test for a crash in shape_tabfix-shape-tab-crashMatthias Clasen2020-06-092-0/+53
| | | | This verifies the fix in the previous commit.
* layout: Fix a crashMatthias Clasen2020-06-091-12/+16
| | | | | pango_layout_get_effective_attributes can return NULL. But not all callers were handling that.
* 1.45.11.45.1Matthias Clasen2020-06-082-1/+10
| | | | | | We've been using the 1.45.0 version in git for a while, without ever putting out a tarball. Lets bump the version to 1.45.1 for a new release, to get avoid uncertainties.
* Merge branch 'wip/baedert/for-master2' into 'master'Matthias Clasen2020-06-0811-133/+277
|\ | | | | | | | | Wip/baedert/for master2 See merge request GNOME/pango!190
| * tests: Update expected outputTimm Bäder2020-06-082-2/+0
| | | | | | | | | | We don't set an attribute list in these cases anymore, so reflect that in the output.
| * test-common: Ignore null attr listsTimm Bäder2020-06-081-0/+3
| | | | | | | | | | pango_layout_get_attributes() is explicitly nullable but not every caller handles that case.
| * testattributes: Test iter on empty attr listTimm Bäder2020-06-081-0/+9
| |
| * layout: Treat empty attr lists like NULL onesTimm Bäder2020-06-082-1/+7
| |
| * layout: Unconditionally unref attr listsTimm Bäder2020-06-081-5/+2
| |
| * pango-layout: Try to avoid allocating a new PangoAttrListTimm Bäder2020-06-081-5/+21
| |
| * testattributes: Properly free GStringTimm Bäder2020-06-081-1/+1
| | | | | | | | Not needed afterwards.
| * glyph-item: Allocate attr iterator on the stackTimm Bäder2020-06-081-9/+11
| |
| * break: Only call break_attrs if we really have attributesTimm Bäder2020-06-081-1/+1
| |
| * break: Make a local constTimm Bäder2020-06-081-2/+1
| | | | | | | | Make it clearer that we're not going to modify the attribute
| * break_attrs: Bail out if we have no ALLOW_BREAKS attributesTimm Bäder2020-06-081-0/+6
| |
| * attributes: Add _pango_attr_list_has_attributesTimm Bäder2020-06-082-0/+8
| | | | | | | | A private function to find empty attribute lists
| * layout: Avoid getting the text length if we know it alreadyTimm Bäder2020-06-081-7/+14
| |
| * Allocate internal PangoAttrLists on the stackTimm Bäder2020-06-085-50/+67
| |
| * layout: Add missing (nullable) annotationTimm Bäder2020-06-081-1/+2
| |
| * layotu: Avoid invalidating when setting attrs from NULL to NULLTimm Bäder2020-06-081-1/+5
| |
| * Allocate internal PangoAttrListIterators on the stackTimm Bäder2020-06-083-46/+91
| |
| * layout: Try to avoid some work when creating itersTimm Bäder2020-06-081-6/+19
| | | | | | | | | | Instead of getting the logical rect and then not using it, try not to compute it in the first place.
| * pangocairo-context: Don't invalidate if font options are equalTimm Bäder2020-06-081-1/+9
| |
| * layout: Ignore setting the width if it won't have any effectTimm Bäder2020-06-081-0/+5
| | | | | | | | | | | | This is a pretty weak check (think e.g. a layout containing the text "a\na"), but it's very easy to do and still hits quite a few cases in real-world applications.
* | Merge branch 'for-master' into 'master'Matthias Clasen2020-06-0816-73/+176
|\ \ | | | | | | | | | | | | For master See merge request GNOME/pango!184
| * | tests: Update the locale useEmmanuele Bassi2020-06-083-9/+11
| | | | | | | | | | | | | | | Create the PangoContext for the test after resetting the locale, and use the en_US.utf8 name, as it seems to be the name used by Fedora.
| * | tests: Ensure we respect the TAP output formatEmmanuele Bassi2020-06-083-9/+35
| | | | | | | | | | | | | | | When dumping the diff between the computed and expected results, we need to respect the TAP format and place "#" in front of each line.
| * | Skip test-break when the en_US locale is missingEmmanuele Bassi2020-06-081-3/+12
| | | | | | | | | | | | Just like test-layout and test-itemize.
| * | Skip test-itemize when the en_US locale is missingEmmanuele Bassi2020-06-081-4/+13
| | | | | | | | | | | | Just like test-layout.
| * | meson: Fix help2man options command lineRico Tzschichholz2020-06-081-1/+1
| | |
| * | Fix some annotationsRico Tzschichholz2020-06-083-3/+3
| | |
| * | Skip layout tests if the en_US locale is not availableEmmanuele Bassi2020-06-081-3/+12
| | | | | | | | | | | | | | | There's no point in running a tests if we know the locale isn't there. The reason gets logged, so the developer can decide to install it.
| * | build: Generate pkg-config files for PangoOT and PangoFcEmmanuele Bassi2020-06-081-4/+20
| | | | | | | | | | | | | | | Since we have them as separate namespaces, we need separate pkg-config file in order to let Vala consume them.
| * | build: Remove unnecessary argumentsEmmanuele Bassi2020-06-081-8/+0
| | | | | | | | | | | | | | | The pkgconfig.generate() function has default values for the version and installation path argument, and we're already using them.
| * | Skip introspection on low level APIEmmanuele Bassi2020-06-084-29/+41
| | | | | | | | | | | | | | | | | | We don't have introspection for fontconfig and freetype2 data types. While we do have introspection for Harfbuzz, it doesn't really work.
| * | Add missing GType for PangoOT deprecated typesEmmanuele Bassi2020-06-083-0/+28
| | | | | | | | | | | | | | | This way consumers of the deprecated API can get appropriate memory management for a couple of boxed types.
| * | build: Generate the correct introspection symbolsEmmanuele Bassi2020-06-081-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | The prefix for the Pango sub-libraries is still Pango, so we need to ensure that the symbols and identifiers are correctly matched. This partially reverts !175, as Pango does not have separate pkg-config files for pango-ot and pango-fc.
| * | Fix annotationEmmanuele Bassi2020-06-081-1/+1
| | | | | | | | | | | | In arguments are nullable; out arguments are optional.
* | | Merge branch 'tab-width' into 'master'Matthias Clasen2020-06-081-1/+5
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | Use shape flags for tab width Closes #425 See merge request GNOME/pango!171
| * | Use shape flags for tab widthJan Alexander Steffens (heftig)2020-02-111-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | We need to apply the right shape flags to the tab width calculation, otherwise (when glyph positions get rounded, which is the default) our tab width will be slightly off from what 8 spaces normally produce. https://gitlab.gnome.org/GNOME/pango/issues/425
* | | Merge branch 'test-break-no-libthai' into 'master'Matthias Clasen2020-06-081-0/+6
|\ \ \ | | | | | | | | | | | | | | | | tests/test-break.c: Only test Thai breaks with libthai available See merge request GNOME/pango!161
| * | | tests/test-break.c: Only test Thai breaks with libthai availableChun-wei Fan2019-11-251-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | The four.break test data file involves the Thai language, meaning that this test will fail unless we have libthai. Skip this test unless libthai is found.
* | | | Merge branch 'doc_tweak' into 'master'Matthias Clasen2020-06-081-99/+103
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Docs: improve formatting of markup description See merge request GNOME/pango!188
| * | | | Docs: improve formatting of markup descriptionJohn Beard2020-05-111-99/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Place <span> attributes and convenience tags into lists to avoid a text wall. * Add headings for each list * Fix broken colour specifications (e.g. #FF0000 had lost the '#') * Fix broken |piped| monospace sections * `backticks` rather than 'quotes'
* | | | | Merge branch 'fix-error-underline' into 'master'Matthias Clasen2020-06-081-3/+10
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | renderer: Fix a division-by-zero See merge request GNOME/pango!189
| * | | | | renderer: Fix a division-by-zeroMatthias Clasen2020-06-081-3/+10
| | |_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to check if height is zero before dividing by it. For completeness, check width at the same time. This was pointed out in https://gitlab.gnome.org/GNOME/pango/-/merge_requests/167
* | | | | Merge branch 'add-compare-attr-lists' into 'master'Matthias Clasen2020-06-083-0/+81
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | Add API to compare PangoAttrLists See merge request GNOME/pango!172
| * | | | Add API to compare PangoAttrListsJonas Dreßler2020-06-073-0/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new `pango_attr_list_equal` API that allows comparing the attributes included in two PangoAttrLists and returns TRUE if the lists contain the same attributes and apply to the same ranges. The function avoids any copying of attributes or lists and applies a minor optimization of skipping the equality check for attributes that were already found in both lists. Other possible optimizations that could be added if necessary would be storing the length of the attributes list in the PangoAttrList class to avoid the `g_slist_length` calls or reusing the `other_iter` pointer in case all attributes from 0 to n were already found.
* | | | | Merge branch 'wip/tbaederr/clang-warnings' into 'master'Matthias Clasen2020-06-081-15/+15
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | PangoLanguage: Fix clang -Wcast-align warnings See merge request GNOME/pango!178
| * | | | | PangoLanguage: Fix clang -Wcast-align warningsTimm Bäder2020-04-141-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clang complains when casting char* to PangoLanguage* and -Wcast-align set. We only cast it to char* to get the proper address for the private struct though, so just cast to void* afterwards. Except for the case that was stuffing PangoLanguage* sized elements into a GArray. Just use a GPtrArray there.