Lee Salzman
6fc4f6027b
Bug 1923636 - Avoid copying paths when transforming. r=aosmond
...
TransformedCopyToBuilder is called any time in Canvas2D the transform
is modified and then a path op is used. On cases that repeatedly change
the transform while building paths, this leads to fairly significant
expense in repeatedly copying the path contents as well as allocating
and deallocating paths.
To work around this, a new primitive TransformedMoveToBuilder is provided
that allows in-place transforming of the path contents. Because paths that
are "finished" and referenced externally can't be safely modified, extra
static methods (i.e. ToBuilder) are added to guarantee that there are no
other refs to the path before modifying its contents.
One snag is that ArcParams could previously not handle transforms, so it
is modified to allow a transform to be supplied to an Arc op, which is
only flattened out when it is streamed to a sink.
Differential Revision: https://phabricator.services.mozilla.com/D225548
2024-10-14 22:48:45 +00:00
..
2024-05-09 00:02:55 +00:00
2024-10-14 22:48:45 +00:00
2023-02-06 12:28:47 +00:00
2024-08-07 06:00:44 +00:00
2023-03-22 11:35:34 +00:00
2024-05-09 00:02:55 +00:00
2023-10-20 03:41:10 +00:00
2023-07-10 02:59:01 +00:00
2024-09-23 05:09:13 +00:00
2024-02-22 17:12:06 +00:00
2022-12-15 05:53:16 +00:00
2022-12-15 05:53:16 +00:00
2022-12-15 05:53:16 +00:00
2022-12-15 05:53:16 +00:00
2022-12-15 05:53:16 +00:00
2023-09-14 00:37:04 +00:00
2023-03-03 20:46:24 +00:00
2024-03-28 06:24:41 +00:00
2024-04-04 19:27:27 +00:00
2024-02-02 20:40:37 +00:00
2024-10-03 15:37:11 +00:00
2024-05-29 17:19:38 +00:00
2024-01-09 23:39:13 +00:00
2023-06-22 00:11:10 +00:00
2024-09-06 15:20:15 +00:00
2024-09-06 15:20:15 +00:00
2024-08-18 23:17:52 +00:00
2024-08-15 22:50:24 +00:00
2024-07-24 20:10:42 +00:00
2023-09-02 12:22:22 +00:00
2024-01-12 12:39:40 +00:00
2024-06-23 09:35:16 +03:00
2024-09-25 17:43:28 +00:00
2023-03-31 07:50:57 +00:00
Bug 1519636 - Reformat recent changes to the Google coding style r=emilio,necko-reviewers,geckoview-reviewers,application-update-reviewers,media-playback-reviewers,devtools-reviewers,anti-tracking-reviewers,profiler-reviewers,win-reviewers,migration-reviewers,padenot,mconley,nchevobbe,kershaw,gstoll,mstange,bytesized,m_kato
2024-07-17 11:15:31 +00:00
2024-08-03 18:57:01 +00:00
2024-01-16 03:38:34 +00:00
2024-01-26 19:21:35 +02:00
2024-08-05 17:59:15 +00:00
2024-09-14 16:23:54 +00:00
2024-09-14 16:23:54 +00:00
2024-10-02 11:43:25 +00:00
2023-12-04 10:09:36 +00:00
2024-09-25 17:43:28 +00:00
2023-10-13 08:32:56 +00:00
2023-02-06 12:28:47 +00:00
2023-10-15 15:29:03 +00:00
2023-02-06 15:01:20 +00:00
2023-07-30 14:31:09 +00:00
2023-07-30 14:31:09 +00:00
Bug 1519636 - Reformat recent changes to the Google coding style r=emilio,necko-reviewers,geckoview-reviewers,application-update-reviewers,media-playback-reviewers,devtools-reviewers,anti-tracking-reviewers,profiler-reviewers,win-reviewers,migration-reviewers,padenot,mconley,nchevobbe,kershaw,gstoll,mstange,bytesized,m_kato
2024-07-17 11:15:31 +00:00
2023-07-30 14:31:09 +00:00
2023-02-21 19:41:49 +00:00
2024-10-14 22:48:45 +00:00
2024-10-14 22:48:45 +00:00
2024-10-14 22:48:45 +00:00
2024-10-14 22:48:45 +00:00
2024-10-14 22:48:45 +00:00
2024-07-08 20:38:03 +00:00
2024-09-06 15:20:15 +00:00
2024-09-06 15:20:15 +00:00
2024-09-06 15:20:15 +00:00
2023-09-12 11:51:11 +00:00
2024-08-03 18:57:01 +00:00
2024-02-02 20:40:37 +00:00
2024-07-26 23:51:26 +00:00
2023-03-03 14:06:07 +00:00
2024-07-26 23:51:26 +00:00
2024-07-26 23:51:26 +00:00
2024-07-26 23:51:26 +00:00
2024-08-15 22:50:24 +00:00
2024-05-15 01:57:52 +00:00
2023-03-22 15:31:53 +00:00
2023-03-22 15:31:53 +00:00
2024-03-18 02:58:39 +00:00
2024-03-18 02:58:39 +00:00
2024-07-24 20:10:42 +00:00
2024-07-24 20:10:42 +00:00
2024-05-15 01:57:52 +00:00
2023-04-17 13:50:11 +00:00
2024-08-05 17:59:15 +00:00
2024-10-03 06:55:08 +00:00
2024-06-14 10:39:56 +00:00
2023-12-05 10:59:06 +00:00