summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Undo excessive search/replaceMatthias Clasen2022-07-0446-187/+187
| | | | | We still refer to the project as 'Pango' in docs and comments, even though the prefix now is 'Pango2'.
* Update examples in the docsMatthias Clasen2022-07-045-271/+328
| | | | Sucks that we have to do this manually.
* Add defines for native fontmapsMatthias Clasen2022-07-049-41/+67
| | | | | Add PANGO_HAS_FC/CORE_TEXT/DIRECT_WRITE_FONTMAP macros to let apps check for the presence of native fontmaps.
* pango-view: Remove leftoversMatthias Clasen2022-07-042-155/+1
| | | | | Since we don't have Xft api anymore, the only usable viewer is the cairo one.
* Redo the cairo backend codeMatthias Clasen2022-07-0417-227/+390
| | | | | | | | | | We need to be more careful when creating a cairo font face. Even on Windows or macOS, we may encounter hb_font_t's that haven't been created from a native font, so we need to handle those (if we have freetype). Also simplify the cairo build machinery a bit, and rely more on cairo-features.h.
* Remove the mixed dependency checkMatthias Clasen2022-07-041-22/+0
| | | | With separate namespaces, this is no longer necessary.
* Update newsMatthias Clasen2022-07-041-0/+17
|
* docs: Mention prefix change in migration guideMatthias Clasen2022-07-041-2/+15
|
* Move the code from pango/ to pango2/Matthias Clasen2022-07-04207-259/+260
| | | | | | Life is easier if the src path matches the installed header path prefix, so make them match. Update all users.
* Versioning gymnasticsMatthias Clasen2022-07-043-23/+23
| | | | | | Change our versioning setup from "pango 2.0" to "pango2 1.0". The shared library we install is now libpango2, and the headers go in /usr/include/pango2-1.0/pango2/.
* Convert to the pango2 prefixMatthias Clasen2022-07-04207-16513/+16515
| | | | | | This makes pango 2 not just parallel-installable with pango 1.x, but parallel-usable in the same process.
* README.win32.md: Mention about pixman on ARM64 buildsChun-wei Fan2022-07-041-1/+6
| | | | | | Sadly, building pixman for ARM64 Windows currently requires clang-cl, so let people know that they should not let Pango build pixman for them if they are building for ARM64 Windows.
* README.win32.md: Use UNIX line endingsChun-wei Fan2022-07-041-80/+80
| | | | | Make it more consistent with the other files, since having this file in Windows CR/LF format is not that important anymore.
* README.win32: Convert to MarkDownChun-wei Fan2022-07-042-65/+80
| | | | This makes the text formatting more pleasing to the eye on a web browser.
* Avoid gio in Pango headersMatthias Clasen2022-07-047-1/+8
| | | | | | We had a leftover include in pango-font-family.h. It is not needed, so drop it and instead include gio where we use its api.
* Be careful with acosMatthias Clasen2022-07-041-1/+1
| | | | | If the input is outside the [0, 1] range, acos returns NaN, so clamp to be safe.
* README.win32: Update Windows build informationChun-wei Fan2022-07-041-16/+11
| | | | | | | | | | | | | There is no more FontConfig support for Windows for Pango2, and let people know they need DirectWrite support enabled in HarfBuzz and Cairo, which may not be enabled by default. Also let people know that if building HarfBuzz as a fallback as a part of building Pango2, Visual Studio 2017 or later is required to successfully build HarfBuzz. Note that HarfBuzz DLLs built with Visual Studio 2017 or later should be compatible with Pango built with Visual Studio 2015.
* Clean up testsMatthias Clasen2022-07-048-41/+26
| | | | Most tests don't require cairo apis.
* Revert "Disable known-broken tests"Matthias Clasen2022-07-042-11/+2
| | | | This reverts commit 1c3973c9eee4dffb7e853a80f57a3e26dad4b781.
* Implement all the line stylesMatthias Clasen2022-07-044-152/+211
|
* Documentation improvementsMatthias Clasen2022-07-0420-132/+166
|
* 1.90Matthias Clasen2022-07-042-0/+115
|
* Update userfont example for changesMatthias Clasen2022-07-041-2/+2
|
* Disable known-broken testsMatthias Clasen2022-07-042-2/+11
| | | | Just so I can make a snapshot release.
* update make-release.sh script for option changesMatthias Clasen2022-07-041-1/+1
|
* Avoid overflow when calculating caret slopeMatthias Clasen2022-07-041-1/+2
| | | | This showed up as wrong slopes with font size > 60.
* Remove an erroneous assertionMatthias Clasen2022-07-041-2/+1
|
* ci: Fix running tests manuallyMatthias Clasen2022-07-041-2/+2
| | | | Our tests now require G_TEST_SRCDIR to be set.
* fontset: Ignore gravity and variationsMatthias Clasen2022-07-041-4/+8
| | | | | | | | Ignore gravity and variations when matching in generic families, since the hb families contained in there don't have those fields in their descriptions. This fixes display of Chinese examples in pango-view.
* Fix gravities for user fontsMatthias Clasen2022-07-045-35/+101
| | | | This is enormous fiddling, and should be much simpler.
* Add a userfont to pango-viewMatthias Clasen2022-07-044-0/+192
| | | | | | To use it, call pango-view with --userfont --font "Userfont 20"
* docs: Add a migration guideMatthias Clasen2022-07-043-0/+184
|
* CosmeticsMatthias Clasen2022-07-041-1/+1
|
* Make PangoGlyphItem privateMatthias Clasen2022-07-0416-373/+307
|
* Document attribute binding helpersMatthias Clasen2022-07-0417-230/+259
|
* Clean up PangoRenderer apiMatthias Clasen2022-07-042-132/+165
|
* Drop more PangoItem apiMatthias Clasen2022-07-047-335/+249
| | | | | | There is no way to do anything useful outside of Pango with these functions, so keep them private.
* font: Redo feature apiMatthias Clasen2022-07-049-121/+51
| | | | Move this to PangoHbFont.
* Make testattributes work on WindowsMatthias Clasen2022-07-041-1/+1
| | | | | Using %p is not a good idea here, since its output is platform-dependent. Thankfully, its easily avoided.
* pangocairo-font.c: Fix Windows DirectWrite buildChun-wei Fan2022-07-044-20/+71
| | | | | | | | | | | | | | | | | | Sadly, the APIs and COM types in dwrite.h that is shipped with the Windows SDK at least is C++ only, so we can't just include it in C files directly. No version of the Windows SDK ship dwrite.h that is compatible with C, unlike many of the DirectX headers that at least shipped in the past with C support. Instead, add a C++ source file that does the work to acquire the cairo_font_face_t that we need from the DirectWrite IDWriteFontFace that we added whe we populated the font map, and call that function from pangocairo-font.c. Make the definition of create_cairo_font_face_for_hb_font() on DirectWrite builds marked with static, as with the CoreText and FontConfig builds. As a consequence, make sure pangocairo-private.h uses C linkage so that things will link properly when DirectWrite is being used.
* build: Drop pangowin32.rc.in from buildMatthias Clasen2022-07-043-70/+0
| | | | | | | | | Pango is now a single library with all its available backends built in the main DLL, so we don't need to (nor should) build resource files for PangoWin32, plus that file has been dropped. Likewise, also drop the pangocairo.rc.in file template, since that is also no longer referenced
* line-breaker: Filter attributes properlyMatthias Clasen2022-07-041-1/+1
| | | | | | We need to extract the itemize attributes first, or we'll miss attributes that are classified as affecting both itemization and shaping.
* Bring back shape attributesMatthias Clasen2022-07-0412-58/+315
| | | | | | It turns out that using user fonts for embedding is a bit too involved, so lets keep the shape attribute machinery around.
* CosmeticsMatthias Clasen2022-07-041-9/+6
|
* build: Fix HarfBuzz fallback for WindowsChun-wei Fan2022-07-042-2/+2
| | | | | | | | | | | | In order to build with DirectWrite support, HarfBuzz must also be built with DirectWrite support, which is disabled by default. Tell the fallback build to look for DirectWrite and enabled it as a result-it should be sufficiently present for Visual Studio with the Windows 8.0 SDK, and we are likely using a Windows 10 SDK since we require Visual Studio 2015 or later for MSVC builds. Remove the line in .gitlab-ci/test-msys2.sh that requests this support since we are putting this in the main Meson build files.
* directwrite: Make cairo support workMatthias Clasen2022-07-041-74/+102
|
* pango-list: Print some more infoMatthias Clasen2022-07-041-3/+15
|
* Capitalize generic namesMatthias Clasen2022-07-043-20/+22
| | | | | | It is what the font chooser expects. Also, make Sans an alternative to Sans-serif.
* CosmeticsMatthias Clasen2022-07-041-1/+1
|
* hbfont: Silently accept lack of sizeMatthias Clasen2022-07-041-2/+3
| | | | The font chooser seems to rely on this behavior.