Jamie Nicol
35e92591dd
Bug 1474883 - Ensure D2D glyph cache is pruned after rendering 1000 transformed glyphs. r=bas
...
Rendering glyphs at many different rotations was causing the D2D glyph
cache to grow very large. Calling EndDraw/BeginDraw will prune the
cache, but is costly, so only do it for every 1000 glyphs.
MozReview-Commit-ID: HUFpxDvYAzQ
--HG--
extra : rebase_source : de283c5e687da07e5417e0d221d7f45b992080d5
2018-07-26 15:23:19 +01:00
Matt Woodrow
9171c79a67
Bug 1372458 - Fold opacity into filter drawing rather than using a temporary surface. r=bas,mstange
...
MozReview-Commit-ID: GOBTUhN7fcC
--HG--
extra : rebase_source : 8355d2001dcc8fba5e43d4ace6483896a9d9cd31
2018-07-14 15:25:49 +12:00
Bas Schouten
2c2327c372
Bug 1427063: Have D2D interpret colors in premultiplied space. As it says is its default. r=rhunt
...
MozReview-Commit-ID: 5OWjHW1CqjN
2018-04-23 19:27:48 +02:00
Lee Salzman
ff2a78845b
Bug 1448667 - use ColorMatrix effect instead of LuminanceToAlpha effect for DrawTargetD2D1::IntoLuminanceSource. r=bas
...
MozReview-Commit-ID: LHbSiFBx6HK
2018-04-05 14:07:18 -04:00
Bas Schouten
7f06948838
Bug 1425257: Introduce a global lock to protect the dependency graph between DrawTargets. r=lsalzman
...
This patch takes the safest route for securing modifications to the dependency graph for D2D DrawTargets. It's possible a slightly optimal approach is possible, however lock contention should be rare and I believe this is the safest and most upliftable approach.
MozReview-Commit-ID: HGfSdEp2U5N
2018-02-06 03:08:04 +01:00
Margareta Eliza Balazs
9c4eafffee
Backed out changeset 0c3400afa45f (bug 1425257) for failing R-e10s in slave/test/build/tests/reftest/tests/image/test/reftest/pngsuite-basic-n/basn0g01.png on a CLOSED TREE
2018-02-06 07:27:43 +02:00
Bas Schouten
bf22a1874d
Bug 1425257: Introduce a global lock to protect the dependency graph between DrawTargets. r=lsalzman
...
This patch takes the safest route for securing modifications to the dependency graph for D2D DrawTargets. It's possible a slightly optimal approach is possible, however lock contention should be rare and I believe this is the safest and most upliftable approach.
MozReview-Commit-ID: HGfSdEp2U5N
2018-02-06 03:08:04 +01:00
Milan Sreckovic
099cfc4242
Bug 1423570: Use BaseRect access methods instead of member variables in gfx/ r=bas.schouten
...
MozReview-Commit-ID: ZGySgc9oP3
--HG--
extra : rebase_source : 23aadc10e9885002290155684b2c495780d979ce
2017-12-19 15:48:39 -05:00
peter chang
f735c3d7f1
Bug 1418791 - Ensure mSnapshot access is protected by mutex, r=dvander
...
MozReview-Commit-ID: 3NPzv6VftxZ
--HG--
extra : rebase_source : 2af00974d4de8d0cc15a326520111c32c4437b54
2017-12-05 15:35:16 +08:00
David Anderson
4d9d8d5d59
Bug 1416864 - Synchronize how snapshots detach in DrawTargetD2D1. r=bas
2017-11-21 10:52:38 -05:00
Markus Stange
78303f13ce
Bug 1414154 - Remove GlyphRenderingOptions. r=lsalzman
...
MozReview-Commit-ID: JtwnTj1hhPV
--HG--
extra : rebase_source : 2a3e896eec8b6839097baf6e2cccc10eb162827b
2017-11-02 21:42:56 -04:00
David Anderson
cf84c3f01d
Add SourceSurfaceCapture to avoid main-thread rasterization with temporary DrawTargetCaptures. (bug 1395478 part 6, r=rhunt)
...
--HG--
extra : rebase_source : 3a3841e5a54f9780720a543ee792f501b5150b02
2017-10-31 12:02:31 -07: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
Bas Schouten
576b1d0c7d
Bug 1392453: Allow a small amount of list-in-list drawing commands. r=mchang
...
MozReview-Commit-ID: H4w5gPVOhwg
2017-09-22 19:37:02 +02:00
Bas Schouten
973de6713e
Bug 1400573: Back out initial fix for bug 1392453. r=mchang
...
MozReview-Commit-ID: 3c3vJbL4kXS
2017-09-20 14:57:25 +02:00
Bas Schouten
2d48dc6667
Bug 1392453: Allow limiting the blend surface area and the portion of the layer being resolved. r=mchang
...
This introduces the infrastructure to specify the bounds of drawing commands being executed. These bounds can then be used to limit operations done for blending in order to reduce required fillrate. Currently we only specify the bounds for DrawSurface but it would be easy to extend this for other drawing commands if so desired.
MozReview-Commit-ID: BUFJzphfdKc
--HG--
extra : rebase_source : cbd17803d8aeb1a74b6c7c98fd5c00e06870805b
2017-09-12 19:10:55 +00:00
Milan Sreckovic
e3cd0a3157
Bug 1387514: Upgrade BaseRect (derived classes) width and height direct member variable use to instead use Width()/SetWidth() and Height()/SetHeight() in .cpp files in gfx/*. r=milan
...
MozReview-Commit-ID: 1jESowJKdyp
--HG--
extra : rebase_source : 3839cdea46729a9af05c777215cffcb9f42a2018
2017-08-14 08:29:28 -04:00
David Anderson
d91f1ac58c
Protect D2D singletons with a mutex. (bug 1380922 part 2, r=mchang)
...
--HG--
extra : rebase_source : f261e84d8d6a9ef7d153b04d447f9edb36a77dde
2017-07-18 12:15:44 -07:00
David Anderson
e53986168f
Store and return D2D singletons in RefPtrs. (bug 1380922 part 1, r=mchang)
...
--HG--
extra : rebase_source : baf7cce201a38897f1f9dcbd7c36855ff070217b
2017-07-18 12:15:39 -07:00
Lee Salzman
2d696d5c34
Bug 1376026 - fix plumbing of DWrite parameters for Skia fonts to not depend on gfxPlatform. r=jrmuizel
...
MozReview-Commit-ID: 5K9201eCSv
2017-06-30 14:09:05 -04:00
Sebastian Hengst
522fc18c93
Backed out changeset 24421d72ba08 (bug 1376026)
2017-07-07 21:42:09 +02:00
Lee Salzman
ab6885d706
Bug 1376026 - fix plumbing of DWrite parameters for Skia fonts to not depend on gfxPlatform. r=jrmuizel
...
MozReview-Commit-ID: 5K9201eCSv
2017-06-30 14:09:05 -04:00
Carsten "Tomcat" Book
fbc9f302f1
Backed out changeset d09fb3a5cedf (bug 1376026)
2017-07-06 08:11:48 +02:00
Lee Salzman
edc6db4195
Bug 1376026 - fix plumbing of DWrite parameters for Skia fonts to not depend on gfxPlatform. r=jrmuizel
2017-06-30 14:09:05 -04:00
Mason Chang
d59c1c2657
Bug 1372577. Fallback to CPU alpha to luminance on the parent process. r=jrmuizel
2017-06-29 10:09:14 -07:00
Mason Chang
d69917e056
Bug 1375452 Fallback to DrawTarget::IntoLuminance if we can't create the effect. r=jrmuizel
2017-06-22 10:15:37 -07:00
Jeff Muizelaar
cf6d4425f4
Bug 1359527. Fixup DrawTarget::IntoLuminance mismerge. r=mchang
...
This adds back the NEON code and fixes up a couple of other pieces
2017-06-09 10:57:44 -04:00
Mason Chang
1520cb158b
Bug 1359527. Part 1 - Add DrawTarget::IntoLuminance r=jrmuizel
2017-06-02 11:13:36 -07:00
Mason Chang
17ccdaf65c
Bug 1369096 - Check HRESULT when QueryInterfacing an ID2D1Image for an ID2D1Bitmap. r=bas
2017-05-30 15:59:19 -07:00
Mason Chang
d73beaa757
Bug 1367127 - Use an ImageBrush during DrawTargetD2D1::PushLayer instead of a BitmapBrush. r=bas
2017-05-30 09:31:02 -07:00
Phil Ringnalda
16b90e808a
Backed out changeset e12fa325e112 (bug 1359527) for Win8 masking reftest failures
...
MozReview-Commit-ID: 5ecOfTu606d
2017-05-28 15:45:42 -07:00
Mason Chang
981bccddf0
Bug 1359527. Add DrawTarget::IntoLuminance. r=jrmuizel,Bas
...
This lets us use the luminance effect with Direct2D to avoid
having to read back. It will also let us avoid reading back
with DrawTargetRecording.
2017-05-28 15:35:14 -04:00
Kevin Chen
d6f7dc2900
Bug 1363677 - Skip Flush() and EndDraw() if the ID2D1DeviceContext is stale; r=dvander
...
MozReview-Commit-ID: 6KnryMZE8Qj
--HG--
extra : rebase_source : 7e8794825934b82c887159b04128cf830f77d897
2017-05-10 16:22:08 +08:00
Mason Chang
25d7f57213
Bug 1351733. Reuse D2D Source Surfaces with Draw Target Dual. r=bas
2017-04-17 08:41:42 -07:00
Lee Salzman
f942812710
Bug 1347147 - fix DrawTargetD2D1::GetImageForSurface to support uploads in device-space. r=mchang
...
MozReview-Commit-ID: 2galhKidxca
2017-03-14 22:17:47 -04:00
Milan Sreckovic
fe9eb910b9
Bug 1262390: In some cases, we fail with the small allocation because of the device reset situation. r=bas.schouten
...
MozReview-Commit-ID: BKMOZbgJ7px
--HG--
extra : rebase_source : b1d86f7e0c134460b96e1b4064303273e6e91a54
2017-02-20 17:14:49 -05:00
Milan Sreckovic
9846692940
Bug 1331274: aPath coming into Fill method may not be valid. r=kechen
...
MozReview-Commit-ID: 5tmGUXEFJlw
--HG--
extra : rebase_source : a76ffbbfecfcbad73f2c7ffba86cf25a719ff133
2017-01-16 13:21:36 -05:00
peter chang
ea69eeb193
Bug 1323837 - Draw nothing if there are no color stops for gradient effect, r=bas
...
MozReview-Commit-ID: BnZlh2NhdHX
--HG--
extra : rebase_source : e221cebdb64e55926c63fd105df0a55635b28e19
2016-12-16 13:55:22 +08:00
Lee Salzman
2b779e5359
Bug 1250037 - part 2 - use DrawTarget::DrawSurfaceWithShadow to render box shadows on platforms that accelerate it. r=mchang
...
MozReview-Commit-ID: 5MERz8RmGUd
2016-11-21 13:17:09 -05:00
Sebastian Hengst
bf0af8baea
Backed out changeset 5504280ce43c (bug 1250037)
2016-11-18 00:29:02 +01:00
Lee Salzman
8acbd8d04a
Bug 1250037 - part 2 - use DrawTarget::DrawSurfaceWithShadow to render box shadows on platforms that accelerate it. r=mchang
...
MozReview-Commit-ID: 5MERz8RmGUd
2016-11-17 16:04:05 -05:00
Ethan Lin
4bf5cb2b97
Bug 1301579 - Add assertion to prevent the use of DrawTargetD2D1::DrawSurface with A8 format. r=mstange
2016-09-08 20:30:00 +02:00
David Major
1cd2c98af7
Bug 1305536: Initialize the out-param of DrawTargetD2D1::GetDeviceSpaceClipRect. r=Bas
2016-09-29 13:18:33 -05:00
Bas Schouten
8c73fcc8e1
Bug 1303534: Make sure to pop all clips before grappig the image for the top-level 'layer'. r=jrmuizel
...
MozReview-Commit-ID: 2nHV0v7MInD
--HG--
extra : rebase_source : a0c7dcc55840020380afe4f0817b3b06f20bef77
2016-09-27 17:11:39 +02:00
Bas Schouten
0da057c54f
Bug 1300338: Do not attempt to preserve layer content when we're going to override it in a blend operation anyway. r=jrmuizel
...
MozReview-Commit-ID: DIEyrK89jtd
2016-09-12 18:41:10 +02:00
Lee Salzman
8869fd86cf
Bug 1029705 - allow clipping to a list of device-space rectangles (a region) in DrawTarget via PushDeviceSpaceClipRects. r=bas
...
MozReview-Commit-ID: 8zM116zB0NB
2016-09-21 17:03:20 -04:00
Nathan Froyd
76bc75d243
Bug 1298171 - store result of BitmapProperties1 in a temporary to avoid warnings; r=jrmuizel
...
MozReview-Commit-ID: ANy1vKc5p07
--HG--
extra : rebase_source : d2b43299ec7244bc5bccb21c96f6604f50b083e8
2016-08-29 10:31:25 -04:00
Nicolas Silva
39f5573d6f
Bug 1291190 - Don't crash when push/pop clips are not balanced correctly. r=Bas
2016-08-24 11:06:45 +02:00
Bas Schouten
37341a7ea4
Bug 1293586: Don't use command lists for an effect when that command list already has an effect with a command list used inside of it. r=mstange
...
MozReview-Commit-ID: 2T2wdUaWgMC
--HG--
extra : rebase_source : f569e9b5613bf8cf419792251335e07a7f743607
2016-08-22 13:22:01 +02:00
Bas Schouten
e0031c0160
Bug 943626 - Part 2: Implement GetGlyphMetrics API for DirectWrite r=jrmuizel
2016-08-11 15:47:32 -04:00