summaryrefslogtreecommitdiff
path: root/pango
Commit message (Collapse)AuthorAgeFilesLines
* 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 '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-082-0/+80
|\ \ \ | |/ / |/| | | | | | | | Add API to compare PangoAttrLists See merge request GNOME/pango!172
| * | Add API to compare PangoAttrListsJonas Dreßler2020-06-072-0/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | meson: Fix pkg-config file generation for HarfBuzzChun-wei Fan2020-06-051-1/+6
| | | | | | | | | | | | | | | HarfBuzz may be found manually instead of via pkg-config, so only add it to Pango's pkg-config file if it is really found via pkg-config.
| * | win32: Use GPrivate-managed display device contextYongsu Park2020-05-194-41/+76
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The document of [CreateDCA][1] says: > If lpszDriver or lpszDevice is DISPLAY, the thread that calls > CreateDC owns the HDC that is created. When this thread is > destroyed, the HDC is no longer valid. Thus, if you create the HDC > and pass it to another thread, then exit the first thread, > the second thread will not be able to use the HDC. So this change introduces GPrivate to fix potential problem. This also fixes the problem caused by accessing the global variable DC directly, which makes some early call to Pango functions fail. (e.g., failure of calling pango_win32_font_description_from_logfontw from _get_system_font_name in GTK.) [1]: https://docs.microsoft.com/windows/win32/api/wingdi/nf-wingdi-createdca
* | 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.
* | Merge branch 'master' into 'master'Matthias Clasen2020-06-082-4/+4
|\ \ | | | | | | | | | | | | Replace fallthrough comments with G_GNUC_FALLTHROUGH See merge request GNOME/pango!177
| * | Replace fallthrough comments with G_GNUC_FALLTHROUGHTimm Bäder2020-04-142-4/+4
| |/
* | Merge branch 'unicode13' into 'master'Matthias Clasen2020-06-082-221/+540
|\ \ | | | | | | | | | | | | Update Unicode Text Segmentation and Line Breaking to Unicode 13 See merge request GNOME/pango!174
| * | Update pango-break-table.h to Unicode 13Peng Wu2020-03-101-195/+523
| | |
| * | Update Line Breaking to Unicode 13Peng Wu2020-03-101-20/+4
| | |
| * | Update Grapheme and Word Boundary to Unicode 13Peng Wu2020-02-271-6/+13
| | |
* | | pangowin32-fontmap: delete no longer needed font map aliasesAaron Boxer2020-06-081-6/+2
| | |
* | | pangowin32-fontmap: load windows fallbacks and aliases in class initAaron Boxer2020-06-082-18/+11
| | | | | | | | | | | | | | | | | | | | | Currently, because of the g_once_init*, only the very first font map that is created will get the correct list of aliases. With these changes the fontmap class loads the aliases once, and this hash table is used by all fontmap objects.
* | | meson: Fix pkg-config file generation for HarfBuzzChun-wei Fan2020-06-081-1/+6
| | | | | | | | | | | | | | | HarfBuzz may be found manually instead of via pkg-config, so only add it to Pango's pkg-config file if it is really found via pkg-config.
* | | win32: Use GPrivate-managed display device contextYongsu Park2020-06-084-41/+76
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The document of [CreateDCA][1] says: > If lpszDriver or lpszDevice is DISPLAY, the thread that calls > CreateDC owns the HDC that is created. When this thread is > destroyed, the HDC is no longer valid. Thus, if you create the HDC > and pass it to another thread, then exit the first thread, > the second thread will not be able to use the HDC. So this change introduces GPrivate to fix potential problem. This also fixes the problem caused by accessing the global variable DC directly, which makes some early call to Pango functions fail. (e.g., failure of calling pango_win32_font_description_from_logfontw from _get_system_font_name in GTK.) [1]: https://docs.microsoft.com/windows/win32/api/wingdi/nf-wingdi-createdca
* | Fix a typoMatthias Clasen2020-03-201-1/+1
|/
* Use correct c:include and distinct package in PangoFc-1.0 and PangoOT-1.0Rico Tzschichholz2020-02-251-4/+4
| | | | Fixes: #456
* Revert "Include HarfBuzz when generating introspection data"Michael Catanzaro2020-02-111-1/+1
| | | This reverts commit 7cfef2b4604ceb64d9022e02a11e6963c7f1289d
* Merge branch 'reproducible' into 'master'Matthias Clasen2020-02-101-1/+1
|\ | | | | | | | | Fix build reproducibility See merge request GNOME/pango!159
| * Fix build reproducibilityJoshua Watt2019-11-201-1/+1
| | | | | | | | | | | | | | | | Changes the comment in pango-enum-types.c to reference the file basename instead of the full path. This ensures that the generated file is reproducible when it is included in source packages meant for debugging. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
* | Merge branch 'emoji-data-update-13.0' into 'master'Matthias Clasen2020-02-101-33/+46
|\ \ | | | | | | | | | | | | Update pango-emoji-table.h to Unicode Emoji Data 13.0 (was released on January 29, 2020) See merge request GNOME/pango!169
| * | Update pango-emoji-table.h to Unicode Emoji Data 13.0 (was released on ↵Mike FABIAN2020-02-061-33/+46
| | | | | | | | | | | | January 29, 2020)
* | | Include HarfBuzz when generating introspection dataEmmanuele Bassi2020-02-071-1/+1
|/ / | | | | | | | | | | | | The Pango API exposes harfbuzz types, and so we need to depend on HarfBuzz-0.0 when generating our introspection data. Fixes: #458
* | family: Clarify and improve pango_font_family_get_face()Benjamin Otte2019-12-082-6/+19
| | | | | | | | | | | | | | - Clarify that the function can return NULL - Fix annotations - Allow passing NULL as name to get a guaranteed default face. - Map the default name to "Regular" in the FC backend
* | fcfontmap: Emit GListModel::changedMatthias Clasen2019-12-041-0/+19
| | | | | | | | We can implement this a bit better in the fontconfig backend.
* | fontmap: Emit GListModel::changedMatthias Clasen2019-12-041-1/+25
| | | | | | | | | | | | Emit the list model changed signal when the font map changes. Since font map changes are rare, we don't keep track of detailed changes and assume everything has changed.
* | pangofc: Add list model implementationsMatthias Clasen2019-12-041-5/+86
| | | | | | | | | | Reimplement GListModel in the fontconfig backend. This implementation avoids memory copies.
* | fontmap: Implement GListModelMatthias Clasen2019-12-041-1/+53
| | | | | | | | | | | | | | Make PangoFontMap a list model which contains the families. The current implementation is not optimized.
* | family: Implement GListModelMatthias Clasen2019-12-041-1/+50
| | | | | | | | | | | | | | Make a PangoFontFamily a list model which contains the faces of the family. The current implementation is not optimized.
* | Add missing "transfer none" annotation to pango_attr_iterator_get()Rico Tzschichholz2019-11-211-1/+1
|/
* Fix a doc commentMatthias Clasen2019-11-041-1/+1
|
* Remove debug spewMatthias Clasen2019-11-041-2/+0
|