Commit Graph

669 Commits

Author SHA1 Message Date
Matt Woodrow
47153c6c2d Bug 946475 - Avoid using AutoSaveRestoreClippedOut for ClearRect when the cumulative clip can be represented as a single axis aligned rectangle. r=Bas 2013-12-12 10:11:37 +13:00
Matt Woodrow
4cd7701567 Bug 946475 - Clip to the clear area in DrawTargetD2D::ClearRect so that we don't accidentally restore pixels that weren't drawn. r=Bas 2013-12-12 10:11:07 +13:00
Martin Stransky
2b7ca13346 Bug 941595 - Build with system-cairo is broken. r=glandium 2013-12-10 10:37:03 -05:00
Markus Stange
83a4f259a6 Bug 945655 - Improve FilterNodeSoftware debug logging. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
66065bfa75 Bug 945655 - Reduce arithmetic combine filter output rect depending on the coefficients. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
bbfebead46 Bug 945655 - Composite filters with operator IN have a result that is the intersection of the input rects, not the union. FilterNodeSoftware part. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
5582cfa361 Bug 945655 - Make transparent flood filters report an empty output rect. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
271d80d1b3 Bug 945655 - Simplify the crop FilterNodeSoftware filter. r=roc 2013-12-10 14:50:40 +01:00
Markus Stange
e6512a0aae Bug 945655 - Don't add transparency around the filter output before sending it to DrawSurface. r=roc 2013-12-10 14:50:40 +01:00
Markus Stange
80876b8581 Bug 945655 - Make all filters deal with null inputs and empty output rects consistently: treat them as transparent. r=roc 2013-12-10 14:50:40 +01:00
Birunthan Mohanathas
2a97f4dc0d Bug 713082 - Part 1: Remove unnecessary Util.h includes. r=Waldo 2013-12-08 21:52:33 -05:00
Andreas Gal
e6549702a5 Bug 946541 - Fix Skia cache purging. r=gw280 2013-12-04 23:52:03 -05:00
Kevin Simons
c8d26f9326 Bug 945314 - Workaround crash with Cairo surfaces in Skia backend. r=mstange
A patch for bug 924102 introduced a MOZ_CRASH assertion for surfaces
of type other than SURFACE_SKIA or SURFACE_DATA being passed to
DrawSurface. Previously surfaces of other types were simply ignored.
On Linux, there are still several hardcoded surfaces of type Cairo
(found in gfxXlibNativeRenderer and friends) and as a result, the
Skia backend crashes always on Linux currently.

This workaround ignores Cairo surfaces passed to DrawSurface.
2013-12-03 08:52:06 -05:00
Kevin Simons
685f495c6f Bug 944412 - Fix an issue with the stride in SourceSurfaceSkia::InitFromData. r=gal
After calling SkBitmap::copyTo, the InitFromData method assumed
that the stride of the destination SkBitmap was now the same as the
stride of the source bitmap. This was, however, not the case. Now
the stride is read back out of the destination bitmap.

This was causing a crash due to memory corruption for FORMAT_B8G8R8X8
surfaces.
2013-12-02 11:03:13 -05:00
Mike Hommey
9245936f8b Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-27 22:55:07 +09:00
Mike Hommey
2b828323f2 Backout changeset 3fd4b546eed4 (bug 874266) and changeset a35d2e3a872f (bug 942043) for ASAN build bustage and Windows test bustage
--HG--
extra : amend_source : f20d09aeff1c8b5cbd0f1d24c7ce04e86f3aed1d
2013-11-28 14:24:05 +09:00
Mike Hommey
d210f8ff00 Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-28 13:08:16 +09:00
Chris Lord
62fe777b60 Bug 931823 - Fix calculation of tiled update data and convert to typed units. r=kats,botond
Various changes to FrameMetrics and such have causes the tile coherency checks
to end up with nonsense values, meaning updates are always happening a tile at
a time.

This fixes the calculation of those values, adds some documentation and
converts a large part of it to using typed units, to make it easier to
understand what's happening.
2013-11-27 17:33:27 +00:00
Bas Schouten
88c097d283 Bug 924102 - Add support for filters to DrawTargetRecording. r=mstange 2013-11-27 12:25:28 +01:00
Bas Schouten
1eada597e4 Bug 924102 - Use FilterNodeSoftware for filter drawing in DrawTargetSkia. r=mstange 2013-11-27 12:25:28 +01:00
Bas Schouten
a6010e3f33 Bug 924102 - Make DrawTargetSkia::DrawSurface support non-Skia DataSourceSurfaces. r=mstange 2013-11-27 12:25:27 +01:00
Markus Stange
217a24a67f Bug 924102 - Add transform filter and remove offset filter. r=Bas 2013-11-27 12:25:27 +01:00
Markus Stange
f96cfc66b0 Bug 924102 - Add a FilterNode implementation that uses Direct2D 1.1 effects. Most of this patch was written by Bas. r=mstange, r=Bas 2013-11-27 12:25:16 +01:00
Markus Stange
3b8525bea8 Bug 924102 - Implement DrawTarget filter APIs with FilterNodeSoftware for Cairo, CG, D2D, D2D1 and Dual. r=Bas 2013-11-27 12:22:56 +01:00
Markus Stange
33b335d52c Bug 924102 - Add a software FilterNode implementation. r=Bas 2013-11-27 12:22:46 +01:00
Markus Stange
73ad1884c7 Bug 924102 - Let AlphaBoxBlur take separate blur radius parameters for X and Y. r=Bas 2013-11-27 12:22:36 +01:00
Markus Stange
189b8ecb59 Bug 924102 - Add filter processing code for many SVG filters. r=Bas 2013-11-27 12:22:27 +01:00
Markus Stange
4d87c8a4dc Bug 924102 - Add a class that renders turbulence as specified for SVG filters. r=Bas 2013-11-27 12:22:21 +01:00
Markus Stange
573590e3f2 Bug 924102 - Add a SIMD.h header that implements some SIMD functions with SSE2 and scalar code. r=Bas 2013-11-27 12:22:13 +01:00
Markus Stange
94888352a2 Bug 924102 - Add filter API to Moz2D. r=Bas, r=mattwoodrow 2013-11-27 12:22:07 +01:00
Markus Stange
3587fa2bcf Bug 924102 - Add the types Point3D and Matrix5x4. r=Bas 2013-11-27 12:22:02 +01:00
Bas Schouten
1e2183726f Bug 937145 - Allow Moz2D recordings to grab the existing content of a DrawTarget. r=BenWa 2013-11-27 12:21:57 +01:00
Bas Schouten
7cbc0c4e6f Bug 942268 - Add RecordedEvent::GetEventName. r=mstange 2013-11-27 12:21:49 +01:00
Markus Stange
294abc7618 Bug 930956 - Make DrawTargetCG::DrawSurface support painting a DataSourceSurface that is not a DataSourceSurfaceCG. r=jrmuizel, r=Bas 2013-11-27 12:21:43 +01:00
Markus Stange
1043a4fcd9 Bug 943614 - Make sure that SourceSurfaceCG::GetDataSurface always returns a surface that has GetType() == SURFACE_DATA. r=Bas 2013-11-27 12:21:34 +01:00
Markus Stange
3a26d173d3 Bug 943614 - Make sure that SourceSurfaceCairo::GetDataSurface always returns a surface that has GetType() == SURFACE_DATA. r=Bas 2013-11-27 12:21:27 +01:00
Markus Stange
41793bc45b Bug 943614 - Make sure that DataSourceSurface::GetDataSurface always returns a surface that has GetType() == SURFACE_DATA. r=Bas 2013-11-27 12:21:21 +01:00
Bas Schouten
9b3b991e36 Bug 943351: Make sure to clear any existing paths before getting the glyph path off a context. r=BenWa 2013-11-26 23:27:05 +01:00
Steven Michaud
0b4c3ee74e Bug 925448 - Stop CGImageRef external data being deleted prematurely. r=bgirard,bas 2013-11-26 12:41:32 -06:00
Matt Woodrow
c49de95f30 Bug 940845 - Part 4: Add BlurRectangle to gfxAlphaBoxBlur and use it. r=roc 2013-11-26 12:08:29 +13:00
Birunthan Mohanathas
0816e609ee Bug 784739 - Switch from NULL to nullptr in miscellaneous directories; r=ehsan
--HG--
extra : rebase_source : 8ace754e117a12e2599f5a90030f13a3a7064fed
2013-11-25 14:02:47 -05:00
Andreas Gal
922244102f Bug 933567 - Clean up Mask implementation a bit. r=mattwoodrow 2013-11-25 09:22:33 -05:00
Kevin Simons
f17db69985 Bug 933567 - Implement MaskSurface for Skia. r=mattwoodrow 2013-11-25 09:20:56 -05:00
Trevor Saunders
280dc2e3ce bug 938025 - part 1 - get rid of some static constructors r=bz r=bjacob 2013-11-22 14:45:50 -05:00
Markus Stange
d74cea0c78 Bug 921495 - Speed up blurring by processing and packing 16 pixels at a time. r=Bas 2013-11-21 17:44:52 +01:00
Markus Stange
71bf8a9d4d Bug 921495 - Make AlphaBoxBlur round correctly s. r=Bas 2013-11-21 17:44:41 +01:00
Markus Stange
e064a30af7 Bug 936459 - Move Tools.h include into the right file. r=Bas
--HG--
extra : rebase_source : 9c976b595a2dd22511184f1341a4d4192e375b50
2013-11-20 17:20:51 +01:00
Markus Stange
a2f88a73a5 Bug 936458 - Use MOZ_ASSERT instead of NS_ABORT_IF_FALSE in BasePoint3D.h and BasePoint4D.h because NS_ABORT_IF_FALSE is not in mfbt and can't be used in standalone moz2d. r=Bas
--HG--
extra : rebase_source : 6ce1149a1c99feb0892a858851350b0e5119fc1a
2013-11-20 17:20:50 +01:00
Markus Stange
8e374e30b3 Bug 935923 - Rename AlphaMode helper function to D2DAlphaModeForFormat and replace most of its uses with D2DPixelFormat. r=Bas
--HG--
extra : rebase_source : c01334a631fae221d474c89502057892c9f540fd
2013-11-20 17:20:50 +01:00
Benoit Girard
491b501b80 Bug 939950 - Build gfx/2d in unified mode. r=bjacob,ehsan,bas
--HG--
extra : rebase_source : 4776cc15a2de124149624b8297ae0c4953621eae
2013-11-18 16:45:14 -05:00