summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* 1.44.11.44.1Matthias Clasen2019-07-282-1/+10
|
* Add some missing symbols to docsMatthias Clasen2019-07-281-3/+3
|
* Merge branch 'fix-emoji-scaling' into 'master'Matthias Clasen2019-07-281-0/+19
|\ | | | | | | | | Take font matrix into account See merge request GNOME/pango!107
| * Take font matrix into accountMatthias Clasen2019-07-281-0/+19
|/ | | | | | | | | | | | | When setting up the scale of the hb_font_t, we need to take both the pango ctm and the font matrix into account - this used to come for free when we were calling into cairo for getting glyph metrics. Now, we use harfbuzz for glyph metrics, so we need to give it the proper scale info. The symptom of this was Emoji getting an enormous width. Curiously, cairo would still render them at the expected size.
* pkgconfig: Make harfbuzz a RequiresMatthias Clasen2019-07-281-1/+1
| | | | | It used to be Requires.private, but we expose harfbuzz types in public headers now.
* Fix up harfbuzz includesMatthias Clasen2019-07-285-5/+5
| | | | | | The correct include is without harfbuzz/. Closes: https://gitlab.gnome.org/GNOME/pango/issues/387
* Fix harfbuzz includesMatthias Clasen2019-07-281-1/+1
| | | | | Until we move harfbuzz from Requires.private to Requires, public headers should include harfbuzz/hb.h.
* Merge branch 'darwin-versions-fix' into 'master'Khaled Hosny2019-07-271-1/+2
|\ | | | | | | | | meson: fix darwin_versions See merge request GNOME/pango!105
| * meson: fix darwin_versionsTom Schoonjans2019-07-271-1/+2
| | | | | | | | The darwin_versions argument should take into account the interface_age
* | Fix some issues with hyphensMatthias Clasen2019-07-271-18/+37
| | | | | | | | | | | | | | | | | | We were inserting hyphens after spaces, and in some other places where they are not desirable. Fix this by looking at the characters on both sides of the break when deciding whether to insert a hyphen.
* | Fix a crash with line break controlMatthias Clasen2019-07-271-1/+1
| | | | | | | | | | We were forgetting to copy allow-break attributes, causing them to be prematurely freed. Oops.
* | 1.441.44Matthias Clasen2019-07-271-1/+1
|/
* Merge branch 'pangowin32-more-harfbuzz' into 'master'Matthias Clasen2019-07-274-731/+60
|\ | | | | | | | | Pangowin32 more harfbuzz See merge request GNOME/pango!103
| * PangoWin32: Use hb_font_get_nominal_glyphKhaled Hosny2019-07-274-731/+60
|/ | | | | Use hb_font_get_nominal_glyph in pango_win32_font_get_glyph_index (deprecated), to better match what Pango is actually using internally.
* Fix an uninitialized valueMatthias Clasen2019-07-271-9/+13
| | | | https://gitlab.gnome.org/GNOME/pango/issues/383
* Merge branch 'variation-coords' into 'master'Matthias Clasen2019-07-253-23/+145
|\ | | | | | | | | Variation coords See merge request GNOME/pango!102
| * fc: Set variation coords on the harfbuzz fontMatthias Clasen2019-07-251-23/+86
| | | | | | | | | | We need to call hb_font_set_var_coords, otherwise the hb_font_t has no coords.
| * pango-list: Optionally show variationsMatthias Clasen2019-07-251-0/+58
| | | | | | | | | | This is not perfect; we really need harfbuzz api to get design coords of a hb_font_t.
| * More updatesMatthias Clasen2019-07-251-0/+1
| |
* | Merge branch 'win32-threadsafe' into 'master'Matthias Clasen2019-07-250-0/+0
|\ \ | |/ |/| | | | | PangoWin32: Improve thread safety See merge request GNOME/pango!98
| * PangoWin32: Make font discovery thread-safeChun-wei Fan2019-07-253-32/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make font discovery using GDI/Unicscribe on Windows thread-safe, by: -Making the alias HashTable a part of the _PangoWin32FontMap struct, so that we only need to initialize this once when we initialize the PangoFontMap on Win32. Make sure that we fill in that hash table with the fonts items we ask from the system once and only once as we initialize the PangoWin32FontMap. -Make the warned_fonts HashTable a part of the _PangoWin32FontMap struct as well, and create the HashTable when we init the PangoWin32FontMap. -Make the access to the common HDC in pangowin32.c where Alex mentioned that could be thread-unsafe done through pango_win32_get_dc(). At this point the test-pangocairo-threads will pass in Meson, tested for 20 successive rounds using 'meson test test-pangocairo-threads'. Note that we still get the "Pango-WARNING **:hh:mm:ss.sss: All font fallbacks failed!!!", but at least we are doing much better on PangoWin32 in terms of thread-safety.
| * PangoWin32: Drop _pango_win32_os_version_infoChun-wei Fan2019-07-254-17/+3
| | | | | | | | We don't need this anymore since we need Vista or later to run.
| * pango/pangowin32-fontmap.c: Fix code formattingChun-wei Fan2019-07-251-216/+221
| | | | | | | | Get rid of the tabs...
* | Merge branch 'win32-threadsafe'Matthias Clasen2019-07-253-32/+38
|\ \
| * | PangoWin32: Make font discovery thread-safeChun-wei Fan2019-07-253-32/+38
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make font discovery using GDI/Unicscribe on Windows thread-safe, by: -Making the alias HashTable a part of the _PangoWin32FontMap struct, so that we only need to initialize this once when we initialize the PangoFontMap on Win32. Make sure that we fill in that hash table with the fonts items we ask from the system once and only once as we initialize the PangoWin32FontMap. -Make the warned_fonts HashTable a part of the _PangoWin32FontMap struct as well, and create the HashTable when we init the PangoWin32FontMap. -Make the access to the common HDC in pangowin32.c where Alex mentioned that could be thread-unsafe done through pango_win32_get_dc(). At this point the test-pangocairo-threads will pass in Meson, tested for 20 successive rounds using 'meson test test-pangocairo-threads'. Note that we still get the "Pango-WARNING **:hh:mm:ss.sss: All font fallbacks failed!!!", but at least we are doing much better on PangoWin32 in terms of thread-safety.
* | NEWS: Some more updatesMatthias Clasen2019-07-251-0/+1
| |
* | Merge branch 'visible-things' into 'master'Matthias Clasen2019-07-2513-18/+624
|\ \ | | | | | | | | | | | | Make things visible See merge request GNOME/pango!69
| * | cairo: Render visible space differentlyMatthias Clasen2019-07-252-3/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of a [SPC] hex box, just render a centered dot, as is commonly used to indicate space. Also render synthetic glyphs for tabs and newlines. This makes single-paragraph mode prettier.
| * | cairo: Better hex boxes for ignorablesMatthias Clasen2019-07-252-9/+32
| | | | | | | | | | | | | | | | | | For ignorable characters such as U+00AD, Soft Hyphen, render a hex box with their 'nickname', which is a 2-6 character short form such as SHY.
| * | Add a utility function for ignorablesMatthias Clasen2019-07-251-0/+70
| | | | | | | | | | | | | | | | | | | | | This returns nicknames and formatting information for default ignorable characters. This will be used to render customized hex boxes for these characters.
| * | shape: Apply the show attributeMatthias Clasen2019-07-251-3/+245
| | | | | | | | | | | | | | | | | | For this, we pull the show attribute out of the analysis and pass the flags on to harfbuzz font funcs, so we can select different glyphs and give them the right extent.
| * | layout: Don't zero the width of visible spaceMatthias Clasen2019-07-251-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't zero out a line separator at the end of line if we turned it into an unknown glyph to render it. And if we zero out whitespace at the end of the line, make sure we don't draw anything there by setting the glyph to EMPTY. Without this, we are getting the [LS] hex box rendered on top of the last character in a line, when the line separator ends up being visible.
| * | layout: Make tab visible tooMatthias Clasen2019-07-251-2/+24
| | | | | | | | | | | | | | | | | | When the 'show space' attribute is present, arrange for tab characters to be passed on to the rendering layer as non-empty.
| * | layout: Use a show attributeMatthias Clasen2019-07-251-0/+6
| | | | | | | | | | | | | | | Use an attribute to show line breaks in single-paragraph mode.
| * | layout: The show attribute affects shapingMatthias Clasen2019-07-251-0/+1
| | |
| * | tests: The show attribute affects shapingMatthias Clasen2019-07-251-0/+1
| | |
| * | tests: Print the show attributeMatthias Clasen2019-07-251-0/+1
| | |
| * | markup: Support the new attributeMatthias Clasen2019-07-251-0/+43
| | | | | | | | | | | | Add markup support for show="space|ignorables".
| * | Add an attribute for showing invisible charsMatthias Clasen2019-07-253-1/+51
| | | | | | | | | | | | | | | Allow to opt-in to showing spaces, line breaks, and default-ignorable chars, separately.
| * | Add a helper for parsing flagsMatthias Clasen2019-07-252-0/+66
|/ / | | | | | | | | We are about to add an attribute whose values are flags.
* | xft: Fix compiler warningsMatthias Clasen2019-07-251-2/+2
| |
* | Merge branch 'win32-some-cleanups' into 'master'Matthias Clasen2019-07-254-233/+224
|\ \ | |/ |/| | | | | PangoWin32: some cleanups See merge request GNOME/pango!101
| * PangoWin32: Drop _pango_win32_os_version_infoChun-wei Fan2019-07-254-17/+3
| | | | | | | | We don't need this anymore since we need Vista or later to run.
| * pango/pangowin32-fontmap.c: Fix code formattingChun-wei Fan2019-07-251-216/+221
|/ | | | Get rid of the tabs...
* build: Make harfbuzz a required dependencyMatthias Clasen2019-07-241-2/+4
| | | | | We can't do without anymore, so report a clear error if harfbuzz is not found.
* Merge branch 'run-attributes' into 'master'Matthias Clasen2019-07-247-99/+244
|\ | | | | | | | | Flip the logic for attribute filtering See merge request GNOME/pango!100
| * shape-test: Match PangoLayoutMatthias Clasen2019-07-241-1/+84
| | | | | | | | | | Use the same logic as PangoLayout for filtering attributes.
| * test-itemize: Match PangoLayoutMatthias Clasen2019-07-242-7/+65
| | | | | | | | | | | | | | Use the same logic as PangoLayout for filtering attributes. Update expected output to match.
| * Add a test file for coloring ArabicMatthias Clasen2019-07-241-0/+2
| | | | | | | | | | | | | | Test that a change of foreground color does not interrupt a run of Arabict text. Taken from https://gitlab.gnome.org/GNOME/pango/issues/28
| * layout: Flip the logic for attribute filteringMatthias Clasen2019-07-242-88/+90
| | | | | | | | | | | | | | | | | | | | | | Instead of filtering out the attributes we don't want to influence itemization, explicitly filter only those attributes that we want to affect itemization. This makes us no longer break items for custom attributes, such as GtkTextAppearance attributes that are created by GtkTextLayout. Update expected output for layout testcases.