Commit Graph

673 Commits

Author SHA1 Message Date
Bas Schouten
496577a876 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
c437f0cb93 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
6f30280ed4 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
63eee7d672 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
ccc8dd1ae7 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
2c52ae2935 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
f09c774110 Bug 941595 - Build with system-cairo is broken. r=glandium 2013-12-10 10:37:03 -05:00
Markus Stange
cf45dd0b45 Bug 945655 - Improve FilterNodeSoftware debug logging. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
931079671a Bug 945655 - Reduce arithmetic combine filter output rect depending on the coefficients. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
14879d50bc 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
9927ea1975 Bug 945655 - Make transparent flood filters report an empty output rect. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
c0ceead6e7 Bug 945655 - Simplify the crop FilterNodeSoftware filter. r=roc 2013-12-10 14:50:40 +01:00
Markus Stange
b2339b298c 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
03990862ae 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
bd0f161288 Bug 713082 - Part 1: Remove unnecessary Util.h includes. r=Waldo 2013-12-08 21:52:33 -05:00
Andreas Gal
28fb485602 Bug 946541 - Fix Skia cache purging. r=gw280 2013-12-04 23:52:03 -05:00
Kevin Simons
9866760836 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
e00cc665ff 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
fdd3247a81 Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-27 22:55:07 +09:00
Mike Hommey
2f727b6d62 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
b038245b8d Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-28 13:08:16 +09:00
Chris Lord
5ef337c5a4 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
55e3bcf87f Bug 924102 - Add support for filters to DrawTargetRecording. r=mstange 2013-11-27 12:25:28 +01:00
Bas Schouten
0e17fc1044 Bug 924102 - Use FilterNodeSoftware for filter drawing in DrawTargetSkia. r=mstange 2013-11-27 12:25:28 +01:00
Bas Schouten
42d0dc60b9 Bug 924102 - Make DrawTargetSkia::DrawSurface support non-Skia DataSourceSurfaces. r=mstange 2013-11-27 12:25:27 +01:00
Markus Stange
4cfec24dfa Bug 924102 - Add transform filter and remove offset filter. r=Bas 2013-11-27 12:25:27 +01:00
Markus Stange
669377532c 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
d20d7c9a8b 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
e9baba2246 Bug 924102 - Add a software FilterNode implementation. r=Bas 2013-11-27 12:22:46 +01:00
Markus Stange
5529e770d2 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
4c57389fc2 Bug 924102 - Add filter processing code for many SVG filters. r=Bas 2013-11-27 12:22:27 +01:00
Markus Stange
410c0c2218 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
a04a3629cd 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
4305f55ca3 Bug 924102 - Add filter API to Moz2D. r=Bas, r=mattwoodrow 2013-11-27 12:22:07 +01:00
Markus Stange
77841507b9 Bug 924102 - Add the types Point3D and Matrix5x4. r=Bas 2013-11-27 12:22:02 +01:00
Bas Schouten
d24aad8e90 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
2b983bacde Bug 942268 - Add RecordedEvent::GetEventName. r=mstange 2013-11-27 12:21:49 +01:00
Markus Stange
63bb72465e 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
ce19eeb4e2 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
a8396470b9 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
41056977e4 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
745c57cd3c 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
2b53cc9d58 Bug 925448 - Stop CGImageRef external data being deleted prematurely. r=bgirard,bas 2013-11-26 12:41:32 -06:00
Matt Woodrow
a44cfe34e6 Bug 940845 - Part 4: Add BlurRectangle to gfxAlphaBoxBlur and use it. r=roc 2013-11-26 12:08:29 +13:00
Birunthan Mohanathas
c4d797a2eb 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
9b75a53f4f Bug 933567 - Clean up Mask implementation a bit. r=mattwoodrow 2013-11-25 09:22:33 -05:00
Kevin Simons
d65723b99c Bug 933567 - Implement MaskSurface for Skia. r=mattwoodrow 2013-11-25 09:20:56 -05:00
Trevor Saunders
15a29c7ef2 bug 938025 - part 1 - get rid of some static constructors r=bz r=bjacob 2013-11-22 14:45:50 -05:00
Markus Stange
e91248f51c 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
6cf9999e77 Bug 921495 - Make AlphaBoxBlur round correctly s. r=Bas 2013-11-21 17:44:41 +01:00