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

717 Коммитов

Автор SHA1 Сообщение Дата
Jonathan Kew 230f11b26b Bug 1629787 - Initialize font metrics via harfbuzz API rather than reading tables directly, so that variations are respected. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D71029

--HG--
extra : moz-landing-system : lando
2020-04-15 14:14:55 +00:00
Andreas Farre f2fa2e633c Bug 1620594 - Part 5: Use GetMainThreadSerialEventTarget instead of SystemGroup::EventTargetFor. r=nika
This patch also tries to remove the event target entirely if it would
default to the main thread on a null event target.

Depends on D67634

Differential Revision: https://phabricator.services.mozilla.com/D67635

--HG--
extra : moz-landing-system : lando
2020-04-07 15:17:07 +00:00
Jonathan Kew 684a3ccf96 Bug 1624827 - Synthesize a space for U+3000 in preference to relying on font fallback. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D68181

--HG--
extra : moz-landing-system : lando
2020-03-26 00:08:40 +00:00
Andrew Osmond 91b071ed14 Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel
gfx::Color is currently misused in many places. The DrawTargets expect
the color space to be in device space, e.g. what we are actually going
to draw using. Everything sitting above generally deals with sRGB, as
specified in CSS. Sometimes we missed the conversion from sRGB to device
space when issuing draw calls, and similarly sometimes we converted the
color to device space twice.

This patch splits the type in two. sRGBColor and DeviceColor now
represent sRGB and device color spaces respectively. DrawTarget only
accepts DeviceColor, and one can get a DeviceColor from an sRGBColor via
the ToDeviceColor helper API. The reftests now pass with color
management enabled for everything (e.g. CSS) instead of just tagged
raster images.

There will be a follow up patch to enable color management everywhere by
default on all supported platforms.

Differential Revision: https://phabricator.services.mozilla.com/D64771

--HG--
extra : moz-landing-system : lando
2020-03-09 14:16:17 +00:00
Jonathan Kew e1a0b48294 Bug 1620125 - Don't assume mVerticalMetrics has necessarily been initialized before DrawOneGlyph is called. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D65567

--HG--
extra : moz-landing-system : lando
2020-03-05 18:07:17 +00:00
Jonathan Kew f7cf3de506 Bug 1616995 - patch 2 - Support vertical skew for upright-vertical fonts in webrender. r=lsalzman
Depends on D63893

Differential Revision: https://phabricator.services.mozilla.com/D64746

--HG--
extra : moz-landing-system : lando
2020-02-28 15:36:19 +00:00
Jonathan Kew b6b828ed19 Bug 1616995 - patch 1 - Correct the axis of skew for synthetic-oblique glyphs in upright-vertical mode. r=lsalzman
This corrects the direction of the skew for non-WebRender drawing.

For WR, I guess we'll need to adjust the matrix that's generated in
FontTransform::synthesize_italics (or something like that).

Differential Revision: https://phabricator.services.mozilla.com/D63893

--HG--
extra : moz-landing-system : lando
2020-02-28 14:55:39 +00:00
Jonathan Kew ab65dd885f Bug 1612822 - Refactor text decoration offset/thickness computations. r=emilio
We replace SetWidthIfLength and SetOffsetIfLength with ComputeDecorationLine{Thickness,Offset} functions,
and consolidate more of the computation of the offset within this function to simplify callers.

Differential Revision: https://phabricator.services.mozilla.com/D61454

--HG--
extra : moz-landing-system : lando
2020-02-03 14:38:47 +00:00
Jonathan Kew 4a6c3ec3f6 Bug 1611610 - Don't increase glyph advance for synthetic bold if the glyph is zero-width. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D61065

--HG--
extra : moz-landing-system : lando
2020-01-25 15:43:45 +00:00
Jonathan Kew f360407017 Bug 1611589 - Fix precedence of font-feature-settings vs disabling of ligatures due to letter-spacing. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D61060

--HG--
extra : moz-landing-system : lando
2020-01-25 12:18:00 +00:00
Chris Peterson 406763af7f Bug 1570499 - Part 1: Replace MOZ_FALLTHROUGH macro with C++17's [[fallthrough]] attribute. r=froydnj
This changeset is a simple find and replace of `MOZ_FALLTHROUGH` and `[[fallthrough]]`.

Unfortunately, the MOZ_FALLTHROUGH_ASSERT macro (to assert on case fallthrough in debug builds) is still necessary after switching from [[clang::fallthrough]] to [[fallthrough]] because:

* MOZ_ASSERT(false) followed by [[fallthrough]] triggers a -Wunreachable-code warning in DEBUG builds
* but MOZ_ASSERT(false) without [[fallthrough]] triggers a -Wimplicit-fallthrough warning in NDEBUG builds.

Differential Revision: https://phabricator.services.mozilla.com/D56440

--HG--
extra : moz-landing-system : lando
2019-12-20 07:16:43 +00:00
shravanrn@gmail.com bfd31f93d3 Bug 1569369 - Add RLBox verifications to tainted data from sandboxed libGraphite r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D42725

--HG--
extra : moz-landing-system : lando
2019-12-19 16:05:47 +00:00
Brindusan Cristian 858cf4323e Backed out 2 changesets (bug 1569369, bug 1566288) for build bustages at rlbox_sandbox.hpp. CLOSED TREE
Backed out changeset 75d775daa792 (bug 1569369)
Backed out changeset 0bc20fd26ca0 (bug 1566288)
2019-12-18 13:53:56 +02:00
shravanrn@gmail.com 8f13634411 Bug 1569369 - Add RLBox verifications to tainted data from sandboxed libGraphite r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D42725

--HG--
extra : moz-landing-system : lando
2019-12-16 07:43:21 +00:00
Jonathan Kew ad9a50096d Bug 1599841 - Invert the direction of details->mOffset.x when doing "mirrored" measurement of RTL glyph runs. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D55709

--HG--
extra : moz-landing-system : lando
2019-12-09 17:34:41 +00:00
Daniel Varga 67c3c4b0c0 Backed out 1 changesets (bug 1599841) for causing reftest failures at tests/layout/reftests/bugs/1562733-rotated-nastaliq-1.html
CLOSED TREE

Backed out changeset d0f23fdfc04b (bug 1599841)
2019-12-09 19:20:43 +02:00
Jonathan Kew 2840ed04e9 Bug 1599841 - Invert the direction of details->mOffset.x when doing "mirrored" measurement of RTL glyph runs. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D55709

--HG--
extra : moz-landing-system : lando
2019-12-09 15:19:43 +00:00
Daniel Varga 85b60ab28d Backed out 2 changesets (bug 1599841) for causing reftest failures at tests/reftest/tests/layout/reftests/bugs/1599841-1.html
CLOSED TREE

Backed out changeset a7a57d54b008 (bug 1599841)
Backed out changeset 6f03a144b7b0 (bug 1599841)
2019-12-09 17:14:56 +02:00
Jonathan Kew ef6e4f9d35 Bug 1599841 - Invert the direction of details->mOffset.x when doing "mirrored" measurement of RTL glyph runs. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D55709

--HG--
extra : moz-landing-system : lando
2019-12-09 14:14:27 +00:00
Emilio Cobos Álvarez e94a6fe8af Bug 1602317 - Switch WR bindings to use associated-constants-in-body. r=jrmuizel
Now that we have C++17, and thus inline const, we can do this.

Depends on D56306

Differential Revision: https://phabricator.services.mozilla.com/D56307

--HG--
extra : moz-landing-system : lando
2019-12-08 21:09:37 +00:00
Alexis Beingessner 6f9c0b0768 Bug 1593745 - handle windows-style transparent emoji better with WR. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D52098

--HG--
extra : moz-landing-system : lando
2019-12-02 15:35:34 +00:00
Jonathan Kew c4066adb6d Bug 1592762 - Update clamped range of font-weight in the gfxFontStyle constructor to match new range allowed in CSS Fonts 4. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D51196

--HG--
extra : moz-landing-system : lando
2019-10-31 10:51:44 +00:00
Alex Henrie 74cc0f4dce Bug 1591490 - Use the NS_IS_SURROGATE_PAIR macro everywhere. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D50697

--HG--
extra : moz-landing-system : lando
2019-10-27 05:05:51 +00:00
Lee Salzman 2b03a82ba0 Bug 1584268 - only instantiate Cairo fonts when drawing to Cairo target. r=jfkthame
This removes a lot of old cruft in thebes to instantiate Cairo scaled fonts.
Instead, we only instantiate the Cairo scaled font inside Moz2D when we actually
need it for DrawTargetCairo. This thus gets rid of the duplicated code we had
inside both Moz2D and thebes to deal with Cairo scaled fonts.

Differential Revision: https://phabricator.services.mozilla.com/D47297

--HG--
extra : moz-landing-system : lando
2019-10-01 21:56:30 +00:00
Lee Salzman 2770b6301a Bug 1582231 - remove Moz2D dependency on Cairo glyph extents. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D46332

--HG--
extra : moz-landing-system : lando
2019-09-20 16:30:21 +00:00
Lee Salzman 44eb8379af Bug 1547063 - Use FreeType metrics directly instead of querying Cairo. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D44497

--HG--
extra : moz-landing-system : lando
2019-09-16 17:15:10 +00:00
Lee Salzman 286a7bbfff Bug 1547063 - Use SharedFTFace in thebes. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D44494

--HG--
extra : moz-landing-system : lando
2019-09-16 17:07:59 +00:00
Cosmin Sabou 8113720646 Backed out 8 changesets (bug 1547063) for causing bug 1581466. a=backout
Backed out changeset c969a93b0ca7 (bug 1547063)
Backed out changeset 003f5a79c6a7 (bug 1547063)
Backed out changeset 2c7032b4d022 (bug 1547063)
Backed out changeset 23892ecc6ef8 (bug 1547063)
Backed out changeset af6e6807ece7 (bug 1547063)
Backed out changeset ebc71e607938 (bug 1547063)
Backed out changeset 772c3427c791 (bug 1547063)
Backed out changeset e74a67e2afe3 (bug 1547063)
2019-09-16 10:44:20 +03:00
Lee Salzman 0d6ebe2503 Bug 1547063 - Use FreeType metrics directly instead of querying Cairo. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D44497

--HG--
extra : moz-landing-system : lando
2019-09-15 03:01:19 +00:00
Lee Salzman a9377fd974 Bug 1547063 - Use SharedFTFace in thebes. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D44494

--HG--
extra : moz-landing-system : lando
2019-09-15 03:00:32 +00:00
Emilio Cobos Álvarez 4bde1e178c Bug 1575713 - Use Span<> rather than copying to return stuff from gfxFontFeatureValueSet. r=boris
It's a really minor perf improvement, but also a cleanup IMO.

Also be a bit more const-correct while at it.

Differential Revision: https://phabricator.services.mozilla.com/D42985

--HG--
extra : moz-landing-system : lando
2019-08-22 00:24:47 +00:00
Emilio Cobos Álvarez dca2b09c76 Bug 1575713 - Use atoms for font-feature-values. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D42984

--HG--
extra : moz-landing-system : lando
2019-08-22 00:24:44 +00:00
Emilio Cobos Álvarez f11bf00012 Bug 1575559 - Make font-variant-alternates use cbindgen. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D42859

--HG--
extra : moz-landing-system : lando
2019-08-21 22:45:26 +00:00
Jonathan Kew 129e7436f7 Bug 1573249 - patch 2 - Don't apply skip-ink to runs of CJK text, because it looks bad with many fonts. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D42529

--HG--
extra : moz-landing-system : lando
2019-08-21 15:07:20 +00:00
Coroiu Cristina f2e9770b54 Backed out 3 changesets (bug 1573249) for chrome failures at layout/inspector/tests/chrome/test_fontFaceGeneric.xul on a CLOSED TREE
Backed out changeset bdba80dae6e2 (bug 1573249)
Backed out changeset 21306e3f8d31 (bug 1573249)
Backed out changeset 3576d5b9f2db (bug 1573249)
2019-08-21 14:01:11 +03:00
Jonathan Kew 2898eb876f Bug 1573249 - patch 2 - Don't apply skip-ink to runs of CJK text, because it looks bad with many fonts. r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D42529

--HG--
extra : moz-landing-system : lando
2019-08-21 09:39:02 +00:00
Alexis Beingessner 22dbda5b64 Bug 1571738 - Fallback as late as possible for svg/color fonts. r=jrmuizel
Also includes some documentation gardening for TextDrawTarget on what we don't support.

Differential Revision: https://phabricator.services.mozilla.com/D41272

--HG--
extra : moz-landing-system : lando
2019-08-12 15:40:26 +00:00
L. David Baron 85cac89c70 Bug 1561792 - Rename the pref gfx.font_ahem_antialias_none to gfx.font_rendering.ahem_antialias_none to avoid the additional pref observer added in the previous patch. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D41068

--HG--
extra : moz-landing-system : lando
2019-08-07 20:46:04 +00:00
Nicholas Nethercote 18fae65f38 Bug 1563139 - Remove StaticPrefs.h. r=glandium
This requires replacing inclusions of it with inclusions of more specific prefs
files.

The exception is that StaticPrefsAll.h, which is equivalent to StaticPrefs.h,
and is used in `Codegen.py` because doing something smarter is tricky and
suitable for a follow-up. As a result, any change to StaticPrefList.yaml will
still trigger recompilation of all the generated DOM bindings files, but that's
still a big improvement over trigger recompilation of every file that uses
static prefs.

Most of the changes in this commit are very boring. The only changes that are
not boring are modules/libpref/*, Codegen.py, and ServoBindings.toml.

Differential Revision: https://phabricator.services.mozilla.com/D39138

--HG--
extra : moz-landing-system : lando
2019-07-26 01:10:23 +00:00
Lee Salzman 8002be2a0d Bug 1563133 - limit GlyphBuffer capacity. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D38214

--HG--
extra : moz-landing-system : lando
2019-07-18 21:44:57 +00:00
Jonathan Kew 91ee22332b Bug 1513423 - Measure text by always laying out glyphs LTR. r=heycam
Depends on D38298

Differential Revision: https://phabricator.services.mozilla.com/D38299

--HG--
extra : moz-landing-system : lando
2019-07-18 04:55:05 +00:00
Lee Salzman fcb5ce241f Bug 1566449 - Don't reverse glyphs in GlyphBuffer for RTL. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D38190

--HG--
extra : moz-landing-system : lando
2019-07-17 16:20:25 +00:00
Daniel Varga 68d2d44e0e Backed out changeset d0c32e17c69f (bug 1566449) for wpt failure at /css/css-text/shaping/shaping_lig-000.html. On a CLOSED TREE 2019-07-17 13:48:59 +03:00
Lee Salzman 1492fa84f0 Bug 1566449 - Don't reverse glyphs in GlyphBuffer for RTL. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D38190

--HG--
extra : moz-landing-system : lando
2019-07-17 07:14:07 +00:00
Bogdan Tara 848c0f8b71 Backed out changeset 0948829b33b0 (bug 1566449) for boundary-shaping-010.html failures CLOSED TREE 2019-07-17 05:16:29 +03:00
Lee Salzman 81469e4765 Bug 1566449 - Don't reverse glyphs in GlyphBuffer for RTL. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D38190

--HG--
extra : moz-landing-system : lando
2019-07-16 19:23:40 +00:00
Bogdan Tara 05d1beaf67 Backed out changeset f69f242281a4 (bug 1566449) for regtests failing because of reftest.list CLOSED TREE 2019-07-16 22:06:42 +03:00
Lee Salzman 8e0e393dc3 Bug 1566528 - clamp the amount of synthetic bold extra strikes. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D38212

--HG--
extra : moz-landing-system : lando
2019-07-16 17:59:35 +00:00
Lee Salzman e979d8d858 Bug 1566449 - Don't reverse glyphs in GlyphBuffer for RTL. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D38190

--HG--
extra : moz-landing-system : lando
2019-07-16 17:24:10 +00:00
Jonathan Kew 947857981c Bug 1562733 - Properly transform DetailedGlyph offsets when rendering vertical (rotated) text through webrender. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D36795

--HG--
extra : moz-landing-system : lando
2019-07-04 11:58:35 +00:00