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

40 Коммитов

Автор SHA1 Сообщение Дата
Jonathan Kew c3f962f2b2 Bug 1775125 - Avoid duplicate call to hypotf() in FlattenedPath::ComputePointAtLength. r=gfx-reviewers,jrmuizel,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D149788
2022-06-20 17:32:45 +00:00
Lee Salzman bc333ceb93 Bug 1761404 - Add DrawTarget DrawShadow API call. r=jrmuizel,gfx-reviewers
This implements a new DrawTarget API call, DrawShadow. This can be used to draw
the shadow of a given Path and Pattern. Unlike DrawSurfaceWithShadow, this only
draws the shadow to simplify the resulting implementation. DrawTarget provides
a default implementation that will draw a blurred shadow to a transient surface
before handing it off to DrawSurfaceWithShadow, allowing existing DrawTarget
implementations to function without having to implement the new API at all.

Within DrawTargetWebgl, DrawShadow allows direct caching of the shadow in the
existing PathCache mechanism, unlike DrawSurfaceWithShadow which would usually
be called with different transient surfaces every time, even if the input
patterns actually matched.

CanvasRenderingContext2D is modified to call DrawShadow when only a shadow
needs to be applied without any filter. AdjustedTarget is modified to wrap
the necessary DrawTarget draw calls so they can be dispatched appropriately.

Since a lot of redundant shadow parameters are shared between DrawShadow and
DrawSurfaceWithShadow, and since a lot of consumers of these functions need
to also pass around these parameters, this also bundles these into a new
ShadowOptions structure to make this easier.

Differential Revision: https://phabricator.services.mozilla.com/D142026
2022-04-01 19:03:29 +00:00
Richal Verma 560f3f056d Bug 1713520 - Remove "else" after "return" in FindInflectionPoints r=nical
Differential Revision: https://phabricator.services.mozilla.com/D116436
2021-06-17 12:39:16 +00:00
Lee Salzman f84ee8c3dc Bug 1604357 - handle divide by zero in bezier inflection approximation range. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D77392
2020-05-29 10:54:28 +00:00
Simon Giesecke dce1e48caf Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D65288

--HG--
extra : moz-landing-system : lando
2020-03-04 15:39:20 +00:00
Nicolas Silva c44ff5af9a Bug 1546894 - Keep track of current and begin points in path objects in case we'll create a builder from them. r=lsalzman
Because of the way the canvas 2D implementation juggles between path builders and paths, we have to keep track of current and first points in the path, in case a builder is created out of it.

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

--HG--
extra : source : c79b3af2395894b449731fccdd9eb006b4d0189e
2019-06-05 09:55:46 +02:00
Sylvestre Ledru e226046cb8 Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

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

--HG--
extra : moz-landing-system : lando
2019-05-01 08:47:10 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Ehsan Akhgari 2febd96e7e Bug 1508472 - Part 2: Second batch of comment fix-ups in preparation for the tree reformat r=sylvestre
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal.  I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.

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

--HG--
extra : moz-landing-system : lando
2018-11-28 00:54:56 +00:00
Cosmin Sabou 0afa5aa670 Backed out 2 changesets (bug 1508472) for causing build bustages on JobScheduler_posix.cpp. CLOSED TREE
Backed out changeset af951294cf96 (bug 1508472)
Backed out changeset 2320933cb7bc (bug 1508472)
2018-11-28 00:08:11 +02:00
Ehsan Akhgari 7c937c2747 Bug 1508472 - Part 2: Second batch of comment fix-ups in preparation for the tree reformat r=sylvestre
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal.  I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.

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

--HG--
extra : moz-landing-system : lando
2018-11-27 21:36:18 +00:00
Andreea Pavel 945463d394 Backed out changeset 11d6688b953f (bug 1508472) for build bustages on a CLOSED TREE 2018-11-27 18:28:30 +02:00
Ehsan Akhgari d0a3a76106 Bug 1508472 - Part 2: Second batch of comment fix-ups in preparation for the tree reformat r=sylvestre
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal.  I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.

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

--HG--
extra : moz-landing-system : lando
2018-11-27 15:18:32 +00:00
Robert Longson da1ac338dc Bug 1474284 - cope with degenerate bezier curves r=baz 2018-07-23 18:36:09 +01:00
Daniel Holbert 126bd9e1a4 Bug 1412427 part 8: (automated patch) Switch a bunch of C++ files in gfx to use our standard mode lines. r=jrmuizel
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py

For every file that is modified in this patch, the changes are as follows:
 (1) The patch changes the file to use the exact C++ mode lines from the
     Mozilla coding style guide, available here:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line

 (2) The patch deletes any blank lines between the mode line & the MPL
     boilerplate comment.

 (3) If the file previously had the mode lines and MPL boilerplate in a
     single contiguous C++ comment, then the patch splits them into
     separate C++ comments, to match the boilerplate in the coding style.

MozReview-Commit-ID: 77D61xpSmIl

--HG--
extra : rebase_source : c6162fa3cf539a07177a19838324bf368faa162b
2017-10-27 16:10:06 -07:00
Kevin Hsieh 0397c306ab Bug 1322537 - Increase tolerance when splitting Bezier curves to prevent hang. r=bas
MozReview-Commit-ID: 3qhj9He65Bh

--HG--
extra : rebase_source : 63f37c20bec61aa21dbf6ff539a9b967a0703810
2017-07-28 23:57:04 -07:00
Sylvestre Ledru 7c0ae251cd Bug 1381253 - Remove redundant control flow declarations rs=ehsan
MozReview-Commit-ID: FFxP4aMCbOL

--HG--
extra : amend_source : 3aec108430b11048f47ffe19d5da7ac5034770a9
2017-07-15 19:03:04 +02:00
Nicolas Silva 7eadba0012 Bug 1294969 - Path flattening should not skip the first inflection point if it is at t=0.0. r=Bas 2016-08-16 15:42:57 +02:00
Nicolas Silva 16fd1cf5ef Bug 1278512 - Fix bezier flattening when the inflection points are on the extremity of the curve. r=Bas 2016-06-07 16:51:44 +02:00
Nicolas Silva 90af12edd2 Bug 1276068 - Correct the path flatness estimation computation. r=Bas 2016-05-31 12:34:17 +02:00
Tom Klein 7b2edfae77 Bug 1134549 - Switch FlattenBezier from floats to doubles. r=bas 2016-04-12 11:44:23 -05:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Lee Salzman a7374fd8b1 Bug 1167026 - Avoid division by zero when flattening a bezier curve segment with equal control points. r=bas 2015-06-02 10:47:15 -04:00
Jeff Muizelaar 7710685272 Bug 1166879. Avoid uninitialized read in FlattenBezier. r=mstange
We only want to read from t2 if count is equal to 2.
Reordering this condition makes that true.

--HG--
extra : rebase_source : f83b2a0f2c99f0b4061f877326fe54cdc31fa3f0
2015-05-20 16:01:23 -04:00
Daniel Holbert 04b749a33d Bug 1068603: Extend FlattenBezier to handle case where full path can be approximated by a linear segment. r=Bas 2015-01-02 14:46:53 -08:00
Daniel Holbert ec62208fdf Bug 1073716: Use C++ std::abs() instead of C abs(), for non-'int'-typed values, to address clang warning. r=ehsan 2014-09-28 09:59:46 -07:00
Botond Ballo a5db405d9f Bug 1057642 - Revert [Int]::PointTyped::[x|y] to be of primitive type. r=kats
--HG--
extra : rebase_source : 55e56423f6c8f5278315a6dc9dfcb9fb983c9309
2014-08-28 12:45:48 -04:00
Botond Ballo ffebd18f0b Bug 923512 - Introduce strongly-typed coordinate classes. r=kats,Bas
--HG--
extra : rebase_source : 22e5fe577ea503aede765c70e16c0bf875c4a9fd
2014-08-19 13:08:16 -04:00
Bas Schouten 6420ff2da0 Bug 992731: Correctly treat a 'line' as a curve with a single inflection point stretching across the entire line. r=jwatt 2014-05-31 03:13:23 +02:00
Bas Schouten 8f3b724393 Bug 999943 - Followup: Add requested comment. r=jwatt 2014-05-27 17:35:35 +02:00
Bas Schouten 0eae897026 Bug 999943: Correctly use the absolute value to determine min and max of the inflection range. r=jwatt 2014-05-27 17:03:34 +02:00
Bas Schouten 38ba64bea6 Bug 987077: Correctly deal with a constant acceleration. r=jwatt 2014-04-02 21:16:57 +01:00
Bas Schouten 90a70f0ab4 Bug 984796: Fix some small errors in path flattening code. r=jwatt 2014-03-22 18:40:58 +01:00
Phil Ringnalda 8eb18b0e12 Back out 87e39d7d851a (bug 984796) for printfing like log size is infinite
CLOSED TREE
2014-03-21 19:49:15 -07:00
Bas Schouten 886ced8b00 Bug 984796: Fix some small errors in path flattening code. r=jwatt 2014-03-22 00:55:36 +01:00
Bas Schouten c7e5c99255 Bug 960245: Deal with the final possibility for degeneracies in FindInflectionApproximationRange. r=jrmuizel 2014-01-16 21:39:19 +01:00
Bas Schouten f83466661c Bug 941585: Better dealing with degenerate beziers. r=jrmuizel 2014-01-09 17:04:17 +01:00
Bas Schouten 1da060fb89 Bug 946540: Deal with inflection points that all lie outside of (0, 1). r=jrmuizel 2013-12-13 15:22:37 +01:00
Jonathan Watt f47e1b2989 Bug 944704, part 1 - Extend Moz2D's ArcToBezier helper so that it can draw ellipse arcs in addition to circle arcs. r=Bas 2013-12-13 12:14:36 +00:00
Bas Schouten d81f6048b3 Bug 939049 - Part 2: Add generic ComputeLength code for backends with no such functionality. r=jrmuizel 2013-11-11 12:42:07 +13:00