Граф коммитов

1127 Коммитов

Автор SHA1 Сообщение Дата
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