Commit Graph

679 Commits

Author SHA1 Message Date
Nicolas Silva
0e614fd67a Bug 951858 - Support DrawTarget::CopySurface with A8 D2D textures. r=Bas 2013-12-19 19:44:20 +01:00
Nicolas Silva
5a6c7540bb Bug 948470 - Correctly set the format of DataSourceSurfaceD2DDrawTarget. r=Bas 2013-12-19 16:36:46 +01:00
Milan Sreckovic
a707eef534 Bug 893572 - Add tests and backout part of bug 922942 for regressing the tests prior to them being landed. r=Bas, r=mattwoodrow 2013-12-17 16:51:16 -05:00
Jeff Muizelaar
4ea3cbe8c9 Bug 948128. Add StackArray helper. r=Bas
This is helpful for when we want to convert between
different types and we need a short lived piece of memory.

--HG--
extra : rebase_source : b841a535cb1ddd837df4b34949bd34054c438c67
2013-12-09 17:07:13 -05:00
Jonathan Watt
3576e7b904 Bug 944704, part 4 - Fix PathBuilderCG::Arc to sweep in the correct direction. r=Bas 2013-12-14 11:09:36 +00:00
Benoit Girard
63dbe4cee0 Bug 941095 - Part 1: Support SetPermitSubpixelAA with Quartz. r=bas
--HG--
extra : rebase_source : 69171a8a17a34c822b34f48babecf18ffa08bf56
2013-12-11 23:16:03 -05:00
Bas Schouten
2d33b1945d 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
d4bb10c7ab 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
Kevin Simons
68173a4652 Bug 944646 - Implement Skia path in ScaledFontBase::CopyGlyphsToBuilder. r=mattwoodrow
Handle PathBuilderSkia with a separate path specifically for
BACKEND_SKIA DrawTarget instances.
2013-12-12 17:37:00 -05:00
Kevin Simons
306ee6f1e6 Bug 944646 - Check the DrawTarget type before downcasting PathBuilders. r=mattwoodrow
Previously the ScaledFontBase::CopyGlyphsToBuilder methods in the
various ScaledFont subclasses static_cast-ed the passed in PathBuilder
objects without checking which sort of DrawSurface they were created by.
2013-12-12 17:37:00 -05:00
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