| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|\
| |
| |
| |
| | |
Various fixes for using pango as a meson subproject
See merge request GNOME/pango!666
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Subprojects that use meson.override_dependency() do not require the
caller to provide the subproject name and dependency variable name
inside the subproject.
All the dependencies we use can be switched in this way; including
gi-docgen which is now automatically executed by the find_program()
invocation thanks to `program_names` in the wrap file.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The is_msvc_like change is wrong; it used a false correlation between
"compiler being used" and "dependency method" by saying that on
Windows, when building with MSVC, you will only use CMake to find
freetype.
You can use pkgconfig to find freetype on Windows with MSVC -- when
it has been built with meson (msvc). You can also find freetype
using CMake on other platforms like macOS or Linux.
The solution is simple: just search for both names on all platforms,
and just search for the pkgconfig name first.
This requires Meson 0.60
|
|/
|
|
|
| |
Also switch the wrap file style to use spaces around `=` which is the
canonical style used by wrapdb now.
|
|\
| |
| |
| |
| | |
meson: Fix pangoft2.pc when using freetype and fontconfig subprojects
See merge request GNOME/pango!665
|
|/
|
|
|
|
|
|
|
|
|
|
| |
This is the same change that was made for pangocairo earlier.
Without this, the pc file contains the following requires line:
```
Requires: pango,
```
Which is incorrect, and also invalid.
|
|\
| |
| |
| |
| |
| |
| | |
PangoWin32: Bring back fallback fontmap support (was: pangowin32-fontmap.c: Check more carefully for monospaced fonts)
Closes #719
See merge request GNOME/pango!664
|
| |
| |
| |
| | |
Fixes https://gitlab.gnome.org/GNOME/pango/-/issues/719
|
|\ \
| | |
| | |
| | |
| | | |
ci: Update the Fedora image to F37
See merge request GNOME/pango!662
|
| | |
| | |
| | |
| | | |
Newer harfbuzz in F37 changes this.
|
| | |
| | |
| | |
| | | |
gi-docgen is unhappy on older Fedoras.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
build: Use a stable harfbuzz
See merge request GNOME/pango!661
|
| | |
| | |
| | |
| | |
| | | |
We don't need the latest harfbuzz.
Stick to 4.0 for now.
|
|\ \ \
| |/ /
|/| /
| |/
| | |
Fix out argument annotation
See merge request GNOME/pango!659
|
|/
|
|
|
| |
A gunichar is a scalar value, and it doesn't get allocated when used as
an out argument.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
Fix char offset calculations
Closes #716
See merge request GNOME/pango!658
|
|/
|
|
|
|
|
|
|
|
|
|
| |
When dealing with multi-paragraph layouts,
the char offsets of the items are expected
to be relative to the beginning of the text,
not relative to the beginning of the current
paragraph.
This error was introduced in a03bf5bc6b07ba6e.
Fixes: #716
|
|\
| |
| |
| |
| |
| |
| | |
tests/meson.build: install nofonts/fonts.conf as it is required by tests
Closes #713
See merge request GNOME/pango!654
|
| |
| |
| |
| | |
Fixes: https://gitlab.gnome.org/GNOME/pango/-/issues/713
|
|\ \
| | |
| | |
| | |
| | | |
Fix some g-i annotations related to arrays
See merge request GNOME/pango!655
|
| |/ |
|
|\ \
| |/
|/|
| |
| | |
Improve PangoAttrList serialization
See merge request GNOME/pango!656
|
| |
| |
| |
| |
| |
| |
| | |
Document the format, and improve the parser a bit,
so we can use this format in GtkBuilder.
Update affected tests.
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
Windows: Fix builds using HarfBuzz as subproject
Closes #707
See merge request GNOME/pango!649
|
| |
| |
| |
| |
| |
| |
| | |
This caused issues when buliding HarfBuzz as a fallback subproject, as
mentioned in issue #707, so don't use platform APIs in HarfBuzz on
Windows as a result.
This reverts commit 3ab3e076665d0722d6f12938f3bddf263322539b.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It turned out that there were issues in regards to building HarfBuzz as
a fallback dependency, so we retain using only the former method to
create the hb_face_t using only raw data, which does not depend on
platform API usage in HarfBuzz.
Hence, reduce the clutter in the build files a bit, which was a
necessary evil back in time.
This reverts commit 6b0aa77d23ac969c12eab00b178957a63befe5bd.
|
|\ \
| | |
| | |
| | |
| | | |
Fix GIR annotations
See merge request GNOME/pango!651
|
| | | |
|
|\ \ \
| |/ /
|/| /
| |/
| | |
Fix the build
See merge request GNOME/pango!652
|
| |
| |
| |
| |
| | |
We are not using these HAVE_FOO defines anymore.
So no need to produce them.
|
| |
| |
| |
| |
| |
| | |
In practice, only Windows doesn't have these,
so simplify our meson.build file by dropping
the check for flockfile.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We include that header in many other places
without this check. The only check we use
elsewhere is for G_OS_WIN32.
This will let us clean up our meson.build
file a little.
|
|/
|
|
| |
Annotations are picky about :
|
|\
| |
| |
| |
| | |
Pango-1.x: Add some DirectWrite support as a supplement
See merge request GNOME/pango!635
|
| |
| |
| |
| |
| |
| | |
The recent additions to this file must be updated so that this header can be
successfully consumed when building in C++ mode, i.e. with DirectWrite. Cast
items as needed.
|
| |
| |
| |
| |
| |
| |
| | |
Use the DirectWrite and/or GDI APIs in HarfBuzz to create the hb_font_t's that
we need, if they are available in HarfBuzz. Use the former raw-data method
if neither are available, or if using DirectWrite failed and GDI support is
not available.
|
| |
| |
| |
| |
| |
| |
| |
| | |
These support are not enabled by default when building HarfBuzz, but if one or
both are enabled, we can simplify the codepath to create the needed hb_face_t.
This was not added previously as the needed HarfBuzz GDI API was not available
at the time the code was written and we are only integrating DirectWrite now.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
...if Cairo is built with DirectWrite support. With this, we can
support colored Emoji, a long-standing issue, on Windows without needing
to use FontConfig, on Windows 8.1 or later, since DirectWrite added support
for colored Emoji starting with Windows 8.1.
This will really fix issue !302 completely, regarding the Emoji not
shown in color!
|
| |
| |
| |
| |
| |
| | |
...which is needed for PangoCairo for Windows, when DirectWrite is used to
create the cairo_font_face_t, so that that object does get cleaned up when the
cairo_font_face_t is destroyed.
|
| |
| |
| |
| |
| |
| |
| | |
This moves some items under PangoWin32 in the DirectWrite support to
simplify acquiring the DirectWrite font face that is needed for various
operations, as we will need to do this in PangoCairo in the Windows
support.
|
| |
| |
| |
| |
| | |
This will be carried out by various functions, so we want to reuse
things.
|
| |
| |
| |
| |
| |
| |
| |
| | |
... by querying the font table 'gasp' and see whether the bits needed
for hinting are there. Codewise, it is simpler with GDI+, but it would
then require more overhead since GDI(+) operations are needed (this means
"slower") and we need to put boilerplates for using GDI+ from our
plain-C code.
|
| |
| |
| |
| |
| |
| |
| | |
Extend the support to use DirectWrite to query the font descriptions from
LOGFONTA's, by using a temporary LOGFONTW which uses the UTF-16'fied
facename converted directly using g_locale_to_utf8 (), since DirectWrite
expects us to use LOGFONTW's for its GDI interop operations.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We now use DirectWrite to query the font weight, stretch, description
and so on by using first DirectWrite's GdiInterop to convert the
logfontw into an IDirectWriteFont, since the support in there for
querying font attributes are more complete in there. Take out the
warned fonts items, as DirectWrite would support the font attributes
that we need much better (i.e. stretch and so on), and the warned fonts
items will get into the way.
Portions based on Luca Bacci's work for querying the font description
for Windows using DirectWrite for the upcoming Pango2.
|
| |
| |
| |
| |
| |
| |
| | |
...if we have Windows 7 with the platform update (which is normally the
case), otherwise we fallback to former GDI approach, since we need to
use the IDWriteFont1 interface that is only available with updated
Windows 7.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
...instead of using EnumFontFamiliesEx(), and retrieve the LOGFONTW's that we
need via DirectWrite's GDI interop. Also cache up our IDWriteFont's that we
obtained, so that we can use DirectWrite to query font properties better
than what GDI/Uniscribe can do for us, such as obtaining stretch info from
the font. Also update synthesize_foreach() accordingly, since we should
also record the IDWriteFonts as well for synthesized LOGFONTWs.
Portions based on Luca Bacci's implementation of the DirectWrite fontmap
support in the upcoming Pango2.
|
| |
| |
| |
| |
| | |
We set up the boilerplate that is necessary for using DirectWrite in our code.
Also add code to tear it down after we are done with it.
|