Commit Graph

679 Commits

Author SHA1 Message Date
Nicolas Silva
84fbed6ac4 Bug 951858 - Support DrawTarget::CopySurface with A8 D2D textures. r=Bas 2013-12-19 19:44:20 +01:00
Nicolas Silva
9797e02a0a Bug 948470 - Correctly set the format of DataSourceSurfaceD2DDrawTarget. r=Bas 2013-12-19 16:36:46 +01:00
Milan Sreckovic
96c7578b86 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
d3040f3cad 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
452b6c3fcf 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
dc08516cff 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
1da060fb89 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
f47e1b2989 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
2192973715 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
f09656d765 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
69b425e751 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
d7f207c94a 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
8832b57f9d Bug 941595 - Build with system-cairo is broken. r=glandium 2013-12-10 10:37:03 -05:00
Markus Stange
3b7dad0997 Bug 945655 - Improve FilterNodeSoftware debug logging. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
9bb2ea8eed Bug 945655 - Reduce arithmetic combine filter output rect depending on the coefficients. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
2e2049d8be 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
00b64761cd Bug 945655 - Make transparent flood filters report an empty output rect. r=roc 2013-12-10 14:50:41 +01:00
Markus Stange
384433e9e1 Bug 945655 - Simplify the crop FilterNodeSoftware filter. r=roc 2013-12-10 14:50:40 +01:00
Markus Stange
c96f3b32c6 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
af208d525d 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
68b00083fd Bug 713082 - Part 1: Remove unnecessary Util.h includes. r=Waldo 2013-12-08 21:52:33 -05:00
Andreas Gal
62ef63ce40 Bug 946541 - Fix Skia cache purging. r=gw280 2013-12-04 23:52:03 -05:00
Kevin Simons
8c7b534e33 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
2d12d37e18 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
8fd06cf41b Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-27 22:55:07 +09:00
Mike Hommey
b32a4ed166 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
682364d535 Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-28 13:08:16 +09:00
Chris Lord
9afd262a59 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
758b8fda77 Bug 924102 - Add support for filters to DrawTargetRecording. r=mstange 2013-11-27 12:25:28 +01:00
Bas Schouten
a7185ffe65 Bug 924102 - Use FilterNodeSoftware for filter drawing in DrawTargetSkia. r=mstange 2013-11-27 12:25:28 +01:00
Bas Schouten
78ae2460a4 Bug 924102 - Make DrawTargetSkia::DrawSurface support non-Skia DataSourceSurfaces. r=mstange 2013-11-27 12:25:27 +01:00
Markus Stange
77c6c600d7 Bug 924102 - Add transform filter and remove offset filter. r=Bas 2013-11-27 12:25:27 +01:00
Markus Stange
9e0156f03c 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
8db97bd05e 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
7db701d658 Bug 924102 - Add a software FilterNode implementation. r=Bas 2013-11-27 12:22:46 +01:00
Markus Stange
db30cb1dcb 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
24d033e113 Bug 924102 - Add filter processing code for many SVG filters. r=Bas 2013-11-27 12:22:27 +01:00
Markus Stange
141e600367 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
c001ff8d47 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
b5eb1563f1 Bug 924102 - Add filter API to Moz2D. r=Bas, r=mattwoodrow 2013-11-27 12:22:07 +01:00
Markus Stange
46bb478bac Bug 924102 - Add the types Point3D and Matrix5x4. r=Bas 2013-11-27 12:22:02 +01:00
Bas Schouten
7e6095b9db 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
823e01695d Bug 942268 - Add RecordedEvent::GetEventName. r=mstange 2013-11-27 12:21:49 +01:00
Markus Stange
976a163b61 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
aa00fefb46 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
452f4eb345 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
17bb2336a1 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
1dbc0fbd1b 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
a87ba6b69f Bug 925448 - Stop CGImageRef external data being deleted prematurely. r=bgirard,bas 2013-11-26 12:41:32 -06:00
Matt Woodrow
cf7881aa40 Bug 940845 - Part 4: Add BlurRectangle to gfxAlphaBoxBlur and use it. r=roc 2013-11-26 12:08:29 +13:00