Commit Graph

119 Commits

Author SHA1 Message Date
Bas Schouten
24c636c143 Bug 1028491: Try to create a reasonable size surface when surface creation fails, otherwise OOM abort. r=jrmuizel 2014-07-03 22:20:08 +02:00
Jonathan Watt
92dc7bdbd8 Bug 1031079 - Get rid of the Thebes backed gfxContexts in gfxASurface, removing gfxASurface::WriteAsPNG_internal and its consumers. r=mattwoodrow 2014-06-27 12:19:40 +01:00
Jonathan Watt
488b914f94 Bug 1031055 - Get rid of the Thebes backed gfxContexts in FrameLayerBuilder.cpp, and get rid of gfxASurface::DumpAsDataURL. r=mattwoodrow 2014-06-27 12:19:40 +01:00
Jonathan Watt
f0cc7f7531 Bug 1027763, part 2 - Make non-Moz2D callers of DrawTarget::GetType() call DrawTarget::GetBackendType() instead. r=Bas 2014-06-19 21:35:33 +01:00
Victor Porof
5643294005 Bug 1007203 - Always add categories when pushing to the pseudostack, r=djvj 2014-05-23 17:12:29 -04:00
Matt Woodrow
89e083b8e0 Bug 991575 - Use a DrawTarget backed gfxContext for the PresShell reference rendering context. r=jwatt 2014-05-12 12:31:28 +12:00
Matt Woodrow
e42521f895 Bug 997336 - Account for the DrawTarget 'device offset' when drawing layers with a mask. r=Bas 2014-05-12 12:31:27 +12:00
Matt Woodrow
805b607329 Bug 993784 - Part 2: Add gfxContext API to mask directly from a moz2d SourceSurface. r=roc 2014-04-09 21:15:19 +12:00
Matt Woodrow
cf387ac0d5 Bug 970294 - Set our surface offset as a gfxContext device offset instead of a transform so that other callers don't accidentally overwrite it. r=nrc 2014-02-28 12:32:38 +13:00
Ali Akhtarzada
62cda5ac7c Bug 970331 - Make sure moz pattern is not set on cairo context. r=nical 2014-02-11 09:22:46 -05:00
Benoit Jacob
93826fc6b0 Bug 959380 - 4/5 - Make gfxContentType a typed enum - r=jrmuizel
find . -type f | grep -v '\./obj' | grep -v '\.hg' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)GFX_CONTENT_\(COLOR\|ALPHA\|COLOR_ALPHA\|SENTINEL\)\($\|[^A-Za-z0-9_]\)/\1gfxContentType::\2\3/g'
2014-01-23 13:26:40 -05:00
Benoit Jacob
3846defaec Bug 959380 - 3/5 - Make gfxSurfaceType a typed enum - r=jrmuizel
find . -type f | grep -v '\./obj' | grep -v '\.hg' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)gfxSurfaceType\(Image\|PDF\|PS\|Xlib\|Xcb\|Glitz\|Quartz\|Win32\|BeOS\|DirectFB\|SVG\|OS2\|Win32Printing\|QuartzImage\|Script\|QPainter\|Recording\|VG\|GL\|DRM\|Tee\|XML\|Skia\|Subsurface\|D2D\|Max\)\($\|[^A-Za-z0-9_]\)/\1gfxSurfaceType::\2\3/g'
2014-01-23 13:26:40 -05:00
Benoit Jacob
06f7a9c4a2 Bug 958375 - 8/9 - Make remaining Moz2D enums typed - r=Bas
Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
2014-01-10 14:06:17 -05:00
Benoit Jacob
2d5774ca0a Bug 958375 - 6/9 - Make BackendType and NativeSurfaceType typed enums - r=Bas
Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
2014-01-10 14:06:16 -05:00
Benoit Jacob
55e7c24065 Bug 958375 - 4/9 - Make SurfaceFormat a typed enum - r=Bas
Specifically:
  r=Bas for manual changes
  f=Bas for automatic changes
See attachments on the bug for the specific breakdown.
2014-01-10 14:06:16 -05:00
Nicholas Cameron
0c8a244237 Bug 933549. Change PaintState to use a DrawTarget instead of a gfxContext. r=mattwoodrow 2014-01-08 10:09:34 +13:00
Nicholas Cameron
2b06b385d4 backed out bug 933549 on a CLOSED TREE 2014-01-08 10:27:14 +13:00
Nicholas Cameron
b88a44ffc8 Bug 933549. Change PaintState to use a DrawTarget instead of a gfxContext. r=mattwoodrow 2014-01-08 10:09:34 +13:00
Matt Woodrow
e011cb2cda Bug 952235 - Handle device offset when applying pattern transform. r=bas 2014-01-07 10:25:05 +09:00
Nicholas Cameron
a96fda05ae Bug 945088. Use the correct device offset in gfxContext. r=mattwoodrow 2013-12-09 21:04:44 +13:00
Matt Woodrow
db2e778910 Bug 934674 - Store the correct transform (with device offset applied) for the pattern. r=Bas 2013-11-07 22:08:56 +13:00
Matt Woodrow
60bb7765a1 Bug 922942 - Avoid crashes with PointInFill. r=Bas
--HG--
extra : rebase_source : cf209258a71342590c3d3488912d85df86a14b8b
2013-11-04 14:47:18 +13:00
Jonathan Watt
98f421784a Bug 931915, part 2 - Make gfxContext::RoundedRectangle use Moz2D's AppendRoundedRectToPath helper. r=Bas 2013-11-01 13:29:53 +00:00
Ed Morley
e4a3dca788 Backed out changeset 9eeddb8dc383 (bug 931915) 2013-11-01 14:34:51 +00:00
Jonathan Watt
bc7ec9b50c Bug 931915, part 2 - Make gfxContext::RoundedRectangle use Moz2D's AppendRoundedRectToPath helper. r=Bas
--HG--
extra : rebase_source : e42577c112c2154b13e7e91cb4d7e54a30a411ce
2013-11-01 13:29:53 +00:00
Matt Woodrow
a03d2eddc9 Bug 844819 - Don't create DrawTargets for invalid cairo surfaces. r=Bas 2013-10-24 16:35:29 +02:00
Jonathan Watt
2111e15e87 Bug 930050 - Remove some dead graphics code. r=Bas 2013-10-24 14:46:37 +02:00
Matt Woodrow
08ccf6da21 Bug 926258 - Implement a Moz2D version of gfxPath. r=Bas 2013-10-15 16:23:21 +13:00
Matt Woodrow
d84a67ef04 Bug 926258 - Remove gfxFlattenedPath as it doesn't match the abstraction we want for Moz2D. r=roc 2013-10-15 16:23:21 +13:00
Matt Woodrow
043a00f400 Bug 923290 - Don't use the window CGContext as a source with Moz2D. r=Bas 2013-10-10 17:44:09 +13:00
Ehsan Akhgari
b6bef348c1 Bug 924221 - Minimize the #includes in gfx/thebes; r=bjacob
--HG--
extra : rebase_source : af198eb9b9739ce718ba0d16c385624a722cde51
2013-10-07 19:15:59 -04:00
Benoit Jacob
c1d7f88886 Bug 913872 - Take nested enums out of gfxASurface - 1/3 : automatic changes - r=jrmuizel
Generated by these regexes:

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/gfx[A-Za-z0-9_]*Surface\:\:[a-z]*\(\(ImageFormat\|SurfaceType\|ContentType\|MemoryLocation\)[0-9A-Za-z_]*\)/gfx\1/g'

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/gfx[A-Za-z0-9_]*Surface\:\:[a-z]*\(\(CONTENT_\|MEMORY_\)[0-9A-Za-z_]*\)/GFX_\1/g'

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(CONTENT_COLOR\|CONTENT_ALPHA\|CONTENT_COLOR_ALPHA\|CONTENT_SENTINEL\|MEMORY_IN_PROCESS_HEAP\|MEMORY_IN_PROCESS_NONHEAP\|MEMORY_OUT_OF_PROCESS\)\($\|[^A-Za-z0-9_]\)/\1GFX_\2\3/g'

find . -name '*.h' -o -name '*.cpp' -o -name '*.mm' | grep -v '\.hg' | grep -v '^\.\/obj' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(ImageFormatARGB32\|ImageFormatRGB24\|ImageFormatA8\|ImageFormatA1\|ImageFormatRGB16_565\|ImageFormatUnknown\|SurfaceTypeImage\|SurfaceTypePDF\|SurfaceTypePS\|SurfaceTypeXlib\|SurfaceTypeXcb\|SurfaceTypeGlitz\|SurfaceTypeQuartz\|SurfaceTypeWin32\|SurfaceTypeBeOS\|SurfaceTypeDirectFB\|SurfaceTypeSVG\|SurfaceTypeOS2\|SurfaceTypeWin32Printing\|SurfaceTypeQuartzImage\|SurfaceTypeScript\|SurfaceTypeQPainter\|SurfaceTypeRecording\|SurfaceTypeVG\|SurfaceTypeGL\|SurfaceTypeDRM\|SurfaceTypeTee\|SurfaceTypeXML\|SurfaceTypeSkia\|SurfaceTypeSubsurface\|SurfaceTypeD2D\|SurfaceTypeMax\)\($\|[^A-Za-z0-9_]\)/\1gfx\2\3/g'
2013-09-24 16:45:13 -04:00
Matt Woodrow
a9bc091490 Bug 916034 - Return the current surface from GetCairo when backed with a DrawTargetCairo. r=jrmuizel 2013-09-13 21:06:54 +12:00
Ryan VanderMeulen
ff842617a6 Backed out changeset 35575118c650 (bug 912794) for asserts. 2013-09-06 23:08:36 -04:00
Milan Sreckovic
7e8ba1c301 Bug 912794 - Separate out the CMS globals and prefs into a singleton gfxColorManagement. r=ncameron
Preferences are now initialized at startup, then updated with callbacks. The methods that access the cached values are not checking the preferences. This lets us better control which thread reads the prefs.

--HG--
rename : gfx/thebes/gfxPlatform.cpp => gfx/thebes/gfxColorManagement.cpp
rename : gfx/thebes/gfxPlatform.h => gfx/thebes/gfxColorManagement.h
2013-09-06 12:48:17 -07:00
John Daggett
fd686e7377 Bug 906704 - fix infinite loop drawing rotated synthetic bold text. r=jrmuizel 2013-08-28 08:36:02 +09:00
Matt Woodrow
756511b29c Bug 907011 - Expose cairo objects from gfxContext when using Azure/cairo. r=Bas 2013-08-23 16:53:53 +12:00
Bas Schouten
e8ba0b203f Bug 907011 - Workaround precision bugs in pixman when doing PopGroupToSource by drawing in device-space. r=mattwoodrow 2013-08-23 16:53:12 +12:00
Ms2ger
6d567ab3cc Bug 904110 - Move alignment features out of Util.h into a new header; r=Waldo 2013-08-14 09:00:52 +02:00
Po-Chun Chang
504e2f2554 Bug 898228 - Avoid wasted work in gfxContext::ClipContainsRect(). r=bas 2013-08-12 08:51:45 -04:00
Birunthan Mohanathas
573d76ec6d Bug 784739 - Switch from NULL to nullptr in gfx/thebes/; r=ehsan 2013-07-31 11:44:31 -04:00
Jeff Muizelaar
7dfe172ed7 Bug 891650. Use mTransform instead of GetDTTransform() in Mask(). r=bas
GetDTTransform includes the device offset. We need to avoid that in order for things to work properly.

--HG--
extra : rebase_source : 5a8ae0011f16b85421df182263ec3137cecf6a6b
2013-07-30 10:15:27 -04:00
Jeff Muizelaar
3bd854107b Bug 885020. Make Mask() use MaskSurface when drawing with EXTEND_NONE. r=bas
We can avoid the overhead of Mask() in situations where we are drawing with
a surface mask and EXTEND_NONE.

--HG--
extra : rebase_source : 578d1ab2de5dee536215ffccc5f80a907efb2140
2013-06-19 17:14:24 -04:00
Jeff Muizelaar
2b16cfb484 Bug 885621. Fix gfxPattern::GetMatrix() with azure and add GetInverseMatrix(). r=bas
Currently SetMatrix will take the Inverse of the passed in matrix but GetMatrix
doesn't not invert it on the way out. This fixes that and adds a
GetInverseMatrix() so that we don't double invert it when we need the inverse.

--HG--
extra : rebase_source : 6bb2049ccee22c62b1825687ecd09ddd1aad8b2e
2013-06-21 14:55:24 -04:00
Jeff Muizelaar
6fc104ba83 Bug 880836. Add MaskSurface() to Azure. r=bas
This gives a substantial performance improvement over the more general Mask():

Test (MaskSurface10x10):  1.93042ms +/- 0.305028
Test (MaskSurface100x100):  2.33435ms +/- 1.00807
Test (MaskSurface500x500):  28.0472ms +/- 0.820744
Test (MaskSurface1000x1000):  107.656ms +/- 6.44615
Test (Mask10x10):  13.5237ms +/- 0.0932034
Test (Mask100x100):  14.0742ms +/- 1.21005
Test (Mask500x500):  96.5596ms +/- 1.81415
Test (Mask1000x1000):  356.891ms +/- 9.30592

--HG--
extra : rebase_source : a3031305302fb4abe93aa480df35ed0936d68cd8
2013-06-12 23:57:51 -04:00
Ryan VanderMeulen
01296b90c1 Backed out changeset 8dcb029b9ca5 (bug 880836) for asserts.
CLOSED TREE
2013-06-18 12:08:19 -04:00
Jeff Muizelaar
f7aa0ef397 Bug 880836. Add MaskSurface() to Azure. r=bas
This gives a substantial performance improvement over the more general Mask():

Test (MaskSurface10x10):  1.93042ms +/- 0.305028
Test (MaskSurface100x100):  2.33435ms +/- 1.00807
Test (MaskSurface500x500):  28.0472ms +/- 0.820744
Test (MaskSurface1000x1000):  107.656ms +/- 6.44615
Test (Mask10x10):  13.5237ms +/- 0.0932034
Test (Mask100x100):  14.0742ms +/- 1.21005
Test (Mask500x500):  96.5596ms +/- 1.81415
Test (Mask1000x1000):  356.891ms +/- 9.30592

--HG--
rename : layout/reftests/svg/text/dynamic-non-scaling-stroke-ref.svg => layout/reftests/svg/non-scaling-stroke-03-ref.svg
rename : layout/reftests/svg/text/dynamic-non-scaling-stroke.svg => layout/reftests/svg/non-scaling-stroke-03.svg
extra : rebase_source : a1218b8bc5cdcec7d4dd94561d841fb6e2a8ce5d
2013-06-12 23:57:51 -04:00
Aryeh Gregor
18866d81dc Bug 867101 - Fix more implicit conversion to already_AddRefed; r=Ms2ger 2013-04-28 14:52:10 +03:00
Bas Schouten
fc4d747155 Bug 779029: Try to respect EXTEND_NONE when masking. r=jrmuizel
--HG--
extra : rebase_source : 0634d90f2c580fd4cc1ad73fb5b3406a6afda964
2013-05-12 15:03:12 +01:00
Aryeh Gregor
659b807986 Bug 859817 - Remove implicit conversions from raw pointer to already_AddRefed; r=Ms2ger 2013-04-22 14:15:59 +03:00