Jonathan Kew
0e98585b83
Bug 1711064 - Cherry-pick fix from upstream cairo to resolve missing objects in generated PDF's xref table. r=jrmuizel
...
See https://gitlab.freedesktop.org/cairo/cairo/-/issues/487 for details. This was merged upstream in
2edcb1ac23
;
Differential Revision: https://phabricator.services.mozilla.com/D116694
2021-06-03 13:23:43 +00:00
Jonathan Kew
422033a266
Bug 454059 - Add [minimal] tag support to cairo-quartz-surface.c. r=jrmuizel
...
This implements a subset of the tag() function on the quartz surface backend;
just enough to support generating links in PDF output. In particular, the
only tag type supported is Link, and we require the link area to be passed
as a list of rects in the 'begin' call; we don't support accumulating all
drawing operations between 'begin' and 'end' into a link area.
Differential Revision: https://phabricator.services.mozilla.com/D114206
2021-05-11 17:00:29 +00:00
Jonathan Kew
374b002063
Bug 1709441 - Bail out early from _cairo_image_compute_color if image is zero-sized. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D114354
2021-05-05 16:50:23 +00:00
Jonathan Kew
685b76ffbe
Bug 739096 - Don't leave the shm field uninitialized in cairo_xlib_display. r=jrmuizel
...
This resulted in a valgrind failure on autoland.
Submitted upstream at https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/170 .
Differential Revision: https://phabricator.services.mozilla.com/D113756
2021-04-29 14:33:37 +00:00
Jonathan Kew
c55581cbc3
Bug 739096 - Merge some Mozilla extensions to cairo-quartz-surface. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112591
2021-04-29 14:33:36 +00:00
Jonathan Kew
98cc55ba62
Bug 739096 - Merge some Mozilla additions for DirectWrite support. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112590
2021-04-29 14:33:36 +00:00
Jonathan Kew
17ed1ad7f6
Bug 739096 - Look up new FreeType variation APIs at runtime, in case we were built against an older installed freetype. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112589
2021-04-29 14:33:35 +00:00
Jonathan Kew
ed34353059
Bug 739096 - Hook up support for SharedFTFace in the cairo-ft-font code. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112588
2021-04-29 14:33:35 +00:00
Jonathan Kew
e6dc732de1
Bug 739096 - Add a synth_flags parameter to cairo_ft_font_face_create_for_ft_face. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112587
2021-04-29 14:33:34 +00:00
Jonathan Kew
6b09c4e6a2
Bug 739096 - Add cairo_surface_{get,set}_subpixel_antialiasing. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112586
2021-04-29 14:33:34 +00:00
Jonathan Kew
4325571887
Bug 739096 - Expose cairo_font_options_{get,set}_lcd_filter as public API. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112585
2021-04-29 14:33:34 +00:00
Jonathan Kew
c8bac2befc
Bug 739096 - Don't declare local var with 'register' in C++. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112584
2021-04-29 14:33:33 +00:00
Jonathan Kew
40835587ef
Bug 739096 - Patch cairo-xlib-xrender-private.h to work around lack of full configure support. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112583
2021-04-29 14:33:33 +00:00
Jonathan Kew
ac16b1fc69
Bug 739096 - Remove obsolete CAIRO_VERSION_* macros. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112582
2021-04-29 14:33:32 +00:00
Jonathan Kew
22e02efb6c
Bug 739096 - Update moz.build for new cairo sources. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112559
2021-04-29 14:33:32 +00:00
Jonathan Kew
7779d64c1b
Bug 739096 - Update cairo to commit 277a1daec80cb6cf7bfb0e200cf78e7842cb2f82 (release 1.17.4 + post-release fixes on trunk) from https://gitlab.freedesktop.org/cairo/cairo/-/tree/master . r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112558
2021-04-29 14:33:30 +00:00
Jonathan Kew
0b6a214452
Bug 739096 - Remove cairo_quartz_{get,finish}_cg_context_with_clip. r=jrmuizel
...
No longer needed in Gecko.
Differential Revision: https://phabricator.services.mozilla.com/D112557
2021-04-29 14:33:29 +00:00
Jonathan Kew
3f563bce7e
Bug 739096 - Remove support for CGLayer-backed cairo quartz surface. r=jrmuizel
...
This was a performance optimization that we no longer care about.
Removing it will avoid the need to merge the additions into the new
cairo-quartz-surface code from upstream.
Differential Revision: https://phabricator.services.mozilla.com/D112556
2021-04-29 14:33:29 +00:00
Brindusan Cristian
a15a62d8e3
Backed out 15 changesets (bug 739096) for causing valgrind bustages. CLOSED TREE
...
Backed out changeset 75e6eca97890 (bug 739096)
Backed out changeset fb2b5f607015 (bug 739096)
Backed out changeset d4ffa7c2db22 (bug 739096)
Backed out changeset 46598f67b43a (bug 739096)
Backed out changeset 08c8584cadbb (bug 739096)
Backed out changeset 6c67d3e98e1e (bug 739096)
Backed out changeset 566742bad252 (bug 739096)
Backed out changeset 67d7ab4394ab (bug 739096)
Backed out changeset 1675a980f8f3 (bug 739096)
Backed out changeset df4fd9df9d67 (bug 739096)
Backed out changeset 1dfadbc743b9 (bug 739096)
Backed out changeset 2623ebd24944 (bug 739096)
Backed out changeset e80fbceb9023 (bug 739096)
Backed out changeset d058e7c043e6 (bug 739096)
Backed out changeset dbb07ebff6b6 (bug 739096)
2021-04-29 00:25:44 +03:00
Jonathan Kew
7d766bce37
Bug 739096 - Merge some Mozilla extensions to cairo-quartz-surface. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112591
2021-04-28 18:06:53 +00:00
Jonathan Kew
bcf8277c61
Bug 739096 - Merge some Mozilla additions for DirectWrite support. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112590
2021-04-28 18:06:53 +00:00
Jonathan Kew
7135beb692
Bug 739096 - Look up new FreeType variation APIs at runtime, in case we were built against an older installed freetype. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112589
2021-04-28 18:06:53 +00:00
Jonathan Kew
32b773d2e6
Bug 739096 - Hook up support for SharedFTFace in the cairo-ft-font code. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112588
2021-04-28 18:06:52 +00:00
Jonathan Kew
68fd445cdb
Bug 739096 - Add a synth_flags parameter to cairo_ft_font_face_create_for_ft_face. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112587
2021-04-28 18:06:52 +00:00
Jonathan Kew
3bbecd5897
Bug 739096 - Add cairo_surface_{get,set}_subpixel_antialiasing. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112586
2021-04-28 18:06:51 +00:00
Jonathan Kew
8daf820aeb
Bug 739096 - Expose cairo_font_options_{get,set}_lcd_filter as public API. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112585
2021-04-28 18:06:51 +00:00
Jonathan Kew
053080d5f2
Bug 739096 - Don't declare local var with 'register' in C++. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112584
2021-04-28 18:06:51 +00:00
Jonathan Kew
77605274fb
Bug 739096 - Patch cairo-xlib-xrender-private.h to work around lack of full configure support. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112583
2021-04-28 18:06:50 +00:00
Jonathan Kew
6ffed52ef5
Bug 739096 - Remove obsolete CAIRO_VERSION_* macros. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112582
2021-04-28 18:06:50 +00:00
Jonathan Kew
3f9db1b9ea
Bug 739096 - Update moz.build for new cairo sources. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112559
2021-04-28 18:06:49 +00:00
Jonathan Kew
8cafeeb79e
Bug 739096 - Update cairo to commit 277a1daec80cb6cf7bfb0e200cf78e7842cb2f82 (release 1.17.4 + post-release fixes on trunk) from https://gitlab.freedesktop.org/cairo/cairo/-/tree/master . r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D112558
2021-04-28 18:06:38 +00:00
Jonathan Kew
93c9a68ac1
Bug 739096 - Remove cairo_quartz_{get,finish}_cg_context_with_clip. r=jrmuizel
...
No longer needed in Gecko.
Differential Revision: https://phabricator.services.mozilla.com/D112557
2021-04-28 18:06:37 +00:00
Jonathan Kew
902db97567
Bug 739096 - Remove support for CGLayer-backed cairo quartz surface. r=jrmuizel
...
This was a performance optimization that we no longer care about.
Removing it will avoid the need to merge the additions into the new
cairo-quartz-surface code from upstream.
Differential Revision: https://phabricator.services.mozilla.com/D112556
2021-04-28 18:06:37 +00:00
Jonathan Kew
5da1d097c2
Bug 1696844 - Fix mask access in pixman sse2 code. r=jrmuizel
...
The important changes here are a handful of places where we replace
memcpy(&m, mask++, sizeof(uint32_t));
or similar code with
uint8_t m = *mask++;
because we're only supposed to be considering a single byte from *mask.
I've also changed a bunch of other places to use this same pattern
(a local 8-bit variable) when reading individual bytes from the mask;
the code was inconsistent about this, sometimes casting the byte to
a uint32_t instead. This makes no actual difference, it just seemed
better to use a consistent pattern throughout the file.
Differential Revision: https://phabricator.services.mozilla.com/D108614
2021-03-17 16:49:27 +00:00
Jeff Muizelaar
691f75ddb4
Bug 1690235. Fix creating variation CTFonts. r=lsalzman
...
This is an alternate approach to aadbc6deca05.
CTFontCreateWithGraphicsFont seems to give "LastResort" when used on a
system CGFont with variation applied on 10.12-10.14. We can avoid that
by using CTFontCreateWithGraphicsFont with a variation descriptor.
I'm only applying this approach to cairo for now to mimimize the risk
of this breaking something or causing the crashes that we were seeing
before.
See https://github.com/servo/core-foundation-rs/pull/439 for
a standalone test case.
Differential Revision: https://phabricator.services.mozilla.com/D104581
2021-02-09 22:27:33 +00:00
Jonathan Kew
fa75a47ab6
Bug 1689998 - Mozilla-specific build fixups for pixman 0.40.0. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D103685
2021-02-05 12:00:27 +00:00
Jonathan Kew
de0b6ff845
Bug 1689998 - Update pixman sources to release 0.40.0. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D103684
2021-02-04 21:41:02 +00:00
Csoregi Natalia
61d74bc90a
Backed out 2 changesets (bug 1689998) for linting failure. CLOSED TREE
...
Backed out changeset 33d60a46b7d0 (bug 1689998)
Backed out changeset 214ffc1253ef (bug 1689998)
2021-02-04 23:34:15 +02:00
Jonathan Kew
8b9386d184
Bug 1689998 - Mozilla-specific build fixups for pixman 0.40.0. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D103685
2021-02-04 20:06:07 +00:00
Jonathan Kew
837c97f4a4
Bug 1689998 - Update pixman sources to release 0.40.0. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D103684
2021-02-02 16:14:40 +00:00
Csoregi Natalia
9c8d0797dd
Backed out 2 changesets (bug 1689998) for reftest failures on blend-color-dodge.svg. CLOSED TREE
...
Backed out changeset 5e707628cd5d (bug 1689998)
Backed out changeset 07da9c6f39dd (bug 1689998)
2021-02-02 18:10:49 +02:00
Jonathan Kew
1baa2d67ad
Bug 1689998 - Mozilla-specific build fixups for pixman 0.40.0. r=jrmuizel
...
Depends on D103684
Differential Revision: https://phabricator.services.mozilla.com/D103685
2021-02-02 14:19:49 +00:00
Jonathan Kew
98c87fa486
Bug 1689998 - Update pixman sources to release 0.40.0. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D103684
2021-02-02 14:19:18 +00:00
Nick Alexander
2a0de542af
Bug 1635273 - Make FT_LCD_FILTER_H a relative rather than absolute path. r=froydnj
...
This helps get sccache hits across source directories.
The previous presentation guaranteed the version of `ftlcdfil.h` in
the tree, while this unorthodox presentation only ensures that the
`freetype2` directory has parent `modules`. This is at least unlikely
to occur in random `/usr/include` directories.
If this turns out to be an issue it would be possible to copy
`ftlcdfil.h` into the object directory, potentially with a unique
name, and then reference that (with a relative path).
Differential Revision: https://phabricator.services.mozilla.com/D73759
2020-06-18 13:40:40 +00:00
Jeff Muizelaar
f8a0df6679
Bug 1624366. Support image surfaces with a last row with < stride bytes. r=lsalzman
...
We create sub images from larger images by using a stride that matches
the original and adjusting the offset. This creates a situation where
the last row will only have stride - offset bytes. This stops us
from lying to CGDataProvider.
Differential Revision: https://phabricator.services.mozilla.com/D77476
2020-05-29 15:17:35 +00:00
Jonathan Kew
659072f6d9
Bug 1631419 - Don't try to pass a dash array of > 16 elements to ExtCreatePen. r=jrmuizel
...
Differential Revision: https://phabricator.services.mozilla.com/D71784
2020-04-21 17:30:53 +00:00
Lee Salzman
9aa1d49189
Bug 1584639 - silence Cairo shift warnings. r=aosmond
...
Differential Revision: https://phabricator.services.mozilla.com/D53720
--HG--
extra : moz-landing-system : lando
2019-11-19 11:49:35 +00:00
Lee Salzman
24fe539478
Bug 1585845 - silence UBSan warning about tt_segment_t in Cairo. r=aosmond
...
Differential Revision: https://phabricator.services.mozilla.com/D48095
--HG--
extra : moz-landing-system : lando
2019-10-04 10:30:05 +00:00
Lee Salzman
7a498a5ff0
Bug 1585584 - clear SharedFTFace lock owner when it is destroyed. r=jfkthame
...
Differential Revision: https://phabricator.services.mozilla.com/D48078
--HG--
extra : moz-landing-system : lando
2019-10-03 20:30:03 +00:00
Lee Salzman
87487437cf
Bug 1584008 - silence UBSan warning about tt_cmap_t in Cairo. r=aosmond
...
Differential Revision: https://phabricator.services.mozilla.com/D47808
--HG--
extra : moz-landing-system : lando
2019-10-01 21:20:09 +00:00