summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Use the new FriBiDi API when availablewip/khaled/fribidiKhaled Hosny2018-02-041-0/+22
|
* Avoid converting to UTF-32 for FriBiDiKhaled Hosny2018-02-041-33/+31
| | | | | Can’t tell if this is any faster, but does not look like a complex thing to do, so why not.
* Drop now unused mini-fribidiKhaled Hosny2018-02-0416-8880/+0
|
* Switch to using external FriBiDiKhaled Hosny2018-02-045-28/+52
|
* build: Only enable freetype if fontconfig is also availablePhilip Withnall2018-01-101-1/+2
| | | | | | | | | | | | | | | This changes meson.build to match what configure.ac already does. The code doesn’t have separate conditions for whether fontconfig and freetype are available: if freetype compilation is enabled, it assumes that fontconfig is also available. Previously, systems with freetype available, but no fontconfig, would fail to compile Pango due to trying to link against non-existent fontconfig symbols. Signed-off-by: Philip Withnall <withnall@endlessm.com> https://bugzilla.gnome.org/show_bug.cgi?id=792363
* 1.41.01.41.0Matthias Clasen2018-01-081-0/+6
|
* fontmap: fix warnings from recent g_object_ref() changesChristian Hergert2018-01-051-2/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=792231
* Avoid a memory leakMatthias Clasen2018-01-051-1/+1
| | | | | | | | We call pango_fc_font_key_init on a stack-allocated temporary lookup key, with the expectation that it does not have to be freed. In the case where we want to use it as key in the font_hash, we call copy() on it. So, don't duplicate the variations string in init() - it will get duplicated in copy() later.
* Remove unneeded varBehdad Esfahbod2018-01-041-3/+0
|
* meson: Bump the fontconfig requirementsMatthias Clasen2018-01-031-1/+4
| | | | | Keep the autotools and meson builds in sync, as far as requirements are concerned.
* Bump version to 1.41Matthias Clasen2018-01-032-3/+3
| | | | We've added new API for font variations.
* [fc] Use FcWeightFrom/ToOpenTypeDouble() if availableBehdad Esfahbod2018-01-032-60/+15
|
* Merge branch 'font-variations'Behdad Esfahbod2018-01-0323-19/+584
|\
| * Make variations test more genericwip/matthiasc/font-variationsMatthias Clasen2018-01-031-9/+9
| | | | | | | | | | Specify just the axis part in the attribute, so this test can be used with any font supporting font variations.
| * [cairo] Don't set font variations on cairo_font_options_tBehdad Esfahbod2018-01-031-9/+0
| | | | | | | | | | | | | | We pass them in through FcPattern to the cairo_face already, no need to pass here again. Yeah, I know... /tears
| * [fc] Only set variations if non-emptyBehdad Esfahbod2018-01-032-3/+5
| |
| * [fc] Request variable fonts from fontconfigBehdad Esfahbod2018-01-031-0/+3
| |
| * Add an out-of-range valueMatthias Clasen2018-01-031-0/+1
| | | | | | | | | | This tests the clamping of axis values, which freetype is supposed to do. It wasn't working when we tried it.
| * pango-view: Add a font-variations exampleMatthias Clasen2018-01-031-0/+8
| | | | | | | | | | This uses markup to demonstrate font variations. It nees the 'Selawik Variations test' font.
| * Add some tests with variationsMatthias Clasen2018-01-034-0/+96
| |
| * Add initial support for OpenType font variationsMatthias Clasen2018-01-037-15/+291
| | | | | | | | | | | | | | | | This commit lets PangoFontDescription carry font variation information as a string. Only pangocairo has been updated to make use of this information. We pass it to harfbuzz for shaping, and we pass it to cairo when creating scaled fonts.
| * Test attribute iteratorsMatthias Clasen2018-01-0310-4/+154
| | | | | | | | | | | | Add a quick test for iterating through attribute lists that piggy-backs on the markup tests - we already have attribute lists and a place for expected results here.
| * Add some font description testsMatthias Clasen2018-01-031-0/+38
|/ | | | This adds some tests around the new variations field.
* Remove declarations for non-existing functionsKhaled Hosny2017-12-011-13/+0
|
* Drop unused _pango_ft2_ft_strerrorKhaled Hosny2017-12-012-46/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | This function is unused since 2004! Last use was dropped in commit 2cdd74591a2b885dbc31292d20dabba81d42faf0. Currently it is just causing compiler warnings: [40/111] Compiling C object 'pango/pangoft2-1.0@sha/pangoft2.c.o'. /usr/include/freetype2/freetype/fterrdef.h: In function ‘_pango_ft2_ft_strerror’: /usr/include/freetype2/freetype/fterrdef.h:235:17: warning: initializer-string for array of chars is too long "found FDEF or IDEF opcode in glyf bytecode" ) ^ ../pango/pangoft2.c:537:38: note: in definition of macro ‘FT_ERRORDEF’ #define FT_ERRORDEF( e, v, s ) { e, s }, ^ /usr/include/freetype2/freetype/fterrdef.h:234:3: note: in expansion of macro ‘FT_ERRORDEF_’ FT_ERRORDEF_( DEF_In_Glyf_Bytecode, 0x9C, ^~~~~~~~~~~~ /usr/include/freetype2/freetype/fterrdef.h:235:17: note: (near initialization for ‘ft_errors[75].msg’) "found FDEF or IDEF opcode in glyf bytecode" ) ^ ../pango/pangoft2.c:537:38: note: in definition of macro ‘FT_ERRORDEF’ #define FT_ERRORDEF( e, v, s ) { e, s }, ^ /usr/include/freetype2/freetype/fterrdef.h:234:3: note: in expansion of macro ‘FT_ERRORDEF_’ FT_ERRORDEF_( DEF_In_Glyf_Bytecode, 0x9C, ^~~~~~~~~~~~
* Remove copy of introspection.m4 from acinclude.m4Ross Burton2017-11-291-98/+0
| | | | | The gobject-introspection macros are ubiquitous now, so remove the copy in acinclude.m4.
* [pangocairo] Pick up font-options from cairo_tBehdad Esfahbod2017-11-221-0/+13
| | | | | | | | Now one can use cairo_set_font_options(), whereas before they had to use pango_cairo_context_set_font_options(). If the latter is used, it will override the former. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=790747
* Fix test buildBehdad Esfahbod2017-11-201-1/+1
|
* 1.40.141.40.14Matthias Clasen2017-11-152-1/+6
|
* Drop fixup_broken_linebreaktest variablePeng Wu2017-11-151-14/+7
| | | | | | The fixup_broken_linebreaktest variable is not needed any more. https://bugzilla.gnome.org/show_bug.cgi?id=789625
* Add char break test casesPeng Wu2017-11-153-1/+32
| | | | | | | Add char break test cases for the is_char_break variable, and fixup_broken_linebreaktest is not used any more. https://bugzilla.gnome.org/show_bug.cgi?id=789625
* Fix is_char_break issue in pango_default_break functionPeng Wu2017-11-151-6/+4
| | | | | | For most cases, the is_char_break variable should be TRUE. https://bugzilla.gnome.org/show_bug.cgi?id=789625
* 1.40.131.40.13Matthias Clasen2017-10-273-2/+8
|
* Fix parameter name to match implementationMatijs van Zuijlen2017-10-271-2/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=781857
* Update pango_default_break function for Line BreakPeng Wu2017-10-271-459/+421
| | | | | | Support Line Break of Unicode 9.0. https://bugzilla.gnome.org/show_bug.cgi?id=788115
* PangoLayout: Optimize pango_layout_get_baselineTimm Bäder2017-10-271-5/+6
| | | | | | | | | | | | | | The baseline is the baseline of the first line of text in the layout, so we can simply _get_extents_internal and use the extents of the first line we get from that. This is not a perfect solution (e.g. gtk+ calls pango_layout_get_extents before a pango_layout_get_baseline call and the former calls get_extents_internal anyway, so we compute the extents twice...) but it improves the situation pointed out by the comment in pango_layout_get_baseline. https://bugzilla.gnome.org/show_bug.cgi?id=788643
* PangoLayoutIter: Allocate an array of Extents instead of a linked listTimm Bäder2017-10-272-59/+42
| | | | | | | | Since PangoLayout caches the amount of lines it contains in ->line_count, we can use this to pre-allocate an Extents array of the appropriate size. https://bugzilla.gnome.org/show_bug.cgi?id=788643
* layout/renderer: Don't heap-allocate short lived layout iteratorsTimm Bäder2017-10-272-35/+37
| | | | | | | Use the new _pango_layout_get_iter and _pango_layout_iter_destroy instead. https://bugzilla.gnome.org/show_bug.cgi?id=788643
* layout: Move PangoLayouIter struct to private headerTimm Bäder2017-10-272-57/+80
| | | | | | | And add _pango_layout_get_iter as well as _pango_layout_iter_destroy that can be used for internal, stack allocated PangoLayoutIters. https://bugzilla.gnome.org/show_bug.cgi?id=788643
* testiter: Don't leak PangoFontDescriptionsTimm Bäder2017-10-271-0/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=788643
* Visual Studio builds: Enhance security of x64 binariesChun-wei Fan2017-10-201-0/+4
| | | | | | | Use the HIGHENTROPYVA linker option on x64 builds with MSVC 2012 and later to enhance the security of the built binaries. Pointed out by Ignacio Casal Quinteiro.
* meson: Add required gir dependencies to fix broken buildRico Tzschichholz2017-09-251-6/+18
|
* Fix warningBehdad Esfahbod2017-09-181-7/+3
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=787194
* meson: Rework gir/typelib generation and dependenciesNirbheek Chauhan2017-09-111-43/+34
| | | | | | | | | | Don't use --include-uninstalled, it's not needed with Meson because we take care of inter-gir target dependencies. Add girs and typelibs to the relevant libpango*_dep declared dependencies so that they can be used via subprojects. https://bugzilla.gnome.org/show_bug.cgi?id=787414
* meson: Build .rc files on WindowsChun-wei Fan2017-09-095-4/+43
| | | | | | | | Like the autotools builds, build the .rc files for the PangoCairo, PangoFT2, PangoWin32 and Pango DLLs so that people can see the version info more easily. https://bugzilla.gnome.org/show_bug.cgi?id=783274
* 1.40.121.40.12Matthias Clasen2017-09-043-2/+7
|
* Fix multilib issue in pango-enum-types.h.templateAkira TAGOH2017-08-301-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=786887
* Fix pango_default_break function for sentence start/endPeng Wu2017-08-301-10/+29
| | | | | | Skip the space characters in sentence start/end. https://bugzilla.gnome.org/show_bug.cgi?id=785978
* build: Update MSVC build docs for introspectionChun-wei Fan2017-08-252-0/+32
| | | | | Let people know about the situation where one is able to build the introspection files directly from within the Visual Studio projects.
* build: Integrate introspection build in MSVC projectsChun-wei Fan2017-08-2516-13/+251
| | | | | | | | | | | | | | | | | | | | | This adds the introspection NMake Makefiles buildable from within the Visual Studio projects, so that the whole Visual Studio build process would be simplified. At its current state, this will build the introspection files for PangoCairo and Pango, but does not include PangoFT2 support, so this is not supported in the [Release|Debug]_FC configs. For this to work, one needs to have a complete installation of GObject-introspection in $(GlibEtcInstallRoot), and will need to ensure that PythonDir (or PythonDirX64 on x64 systems) corresponds to the same Python series that was used to build GObject-Introspection. This needs to be built (and cleaned) separately as this is not built by default, by building/cleaning the pango-introspect project directly. In this commit, also rename the PythonPath entries in the projects and property sheets, so that we avoid getting confused with the PYTHONPATH envvar; and for Visual Studio 201x builds, we use Python 3.4.x by default 2010, 2012 and 2013, and 3.6.x by default for 2015 and 2017, as what is done now in GObject-Introspection projects.