Commit Graph

104 Commits

Author SHA1 Message Date
Seth Fowler
f16f08b16e Bug 1118087 - Correctly sync decode even if an imgFrame is partially decoded. r=tn 2015-01-11 19:28:02 -08:00
Tom Schuster
967d0d250a Backout changeset b4ebefd0f7e3:a8044fd506db Bug 1117607, Bug 1118087, Bug 1118092, Bug 1118105, Bug 1030372, Bug 1079627 on CLOSED TREE 2015-01-11 20:43:32 +01:00
Seth Fowler
08df7af950 Bug 1079627 (Part 3) - Support multiple decoders for a single RasterImage. r=tn 2015-01-11 05:34:20 -08:00
Seth Fowler
c575069c34 Bug 1079627 (Part 1) - Make image decoders hold a strong reference to their image. r=tn 2015-01-11 05:34:20 -08:00
Seth Fowler
e85c416171 Bug 1118105 - Make SurfaceCache::Insert let you know if you try to insert a duplicate surface. r=dholbert 2015-01-10 20:47:39 -08:00
Seth Fowler
bd5a6c7b28 Bug 1118092 - Manage invalidation policy directly in the image decoder. r=tn 2015-01-10 20:47:38 -08:00
Seth Fowler
5955b3c0ef Bug 1118087 - Correctly sync decode even if an imgFrame is partially decoded. r=tn 2015-01-10 20:47:38 -08:00
Seth Fowler
13ecf8f345 Bug 1117607 - Make decoders responsible for their own frame allocations. r=tn 2015-01-10 18:47:44 -08:00
Wes Kocher
a1bfc06c8c Backout 17fc30214d84 (bug 1117607) for reftest orange 2015-01-09 18:48:43 -08:00
Seth Fowler
57b28877bf Bug 1117607 - Make decoders responsible for their own frame allocations. r=tn 2015-01-09 15:02:48 -08:00
Seth Fowler
e723960bef Bug 1116733 (Part 2) - Remove DecodeStrategy and frame allocation handling outside of Decoder. r=tn 2015-01-08 00:04:31 -08:00
Seth Fowler
2308938365 Bug 1116733 (Part 1) - Allocate frames off-main-thread. r=tn 2015-01-08 00:04:31 -08:00
Seth Fowler
3aabf959b6 Bug 1116735 - Allocate frames in the decoder. r=tn
--HG--
extra : rebase_source : df5c3cbe4e8a8ad40e4a7fa04a2c53e1c3bad559
2015-01-08 00:01:25 -08:00
Seth Fowler
f5c7051077 Bug 1116737 - Merge FrameBlender into FrameAnimator. r=tn
--HG--
extra : rebase_source : f2021135cf82e35273095f8e96373bcbee304710
2015-01-07 13:07:23 -08:00
Seth Fowler
fc5233fbbd Bug 1060869 (Part 2) - Store the first frame of a RasterImage in the SurfaceCache. r=tn 2014-11-26 13:22:10 -08:00
Carsten "Tomcat" Book
f7bc004ff0 Backed out changeset 0a67a7799022 (bug 1060869) 2014-11-26 11:57:09 +01:00
Seth Fowler
3e7327ec18 Bug 1060869 (Part 2) - Store the first frame of a RasterImage in the SurfaceCache. r=tn 2014-11-26 01:37:56 -08:00
Seth Fowler
50c3d078f0 Bug 1101759 - Correctly record when we flush data during sync decodes. r=tn 2014-11-20 00:59:05 -08:00
Seth Fowler
c7b5999add Bug 1081012 - Move DecodePool and related helpers out of RasterImage. r=tn 2014-11-18 18:17:17 -08:00
Seth Fowler
550967dd4b Bug 1079653 (Part 3) - Make decoders track whether they need to flush data after getting a new frame. r=tn 2014-11-18 12:06:27 -08:00
Seth Fowler
81d84ca02d Bug 1079653 (Part 1) - Move decode telemetry data from DecodeRequest to Decoder. r=tn 2014-11-18 12:06:26 -08:00
Seth Fowler
673dd952a5 Bug 1100725 (Part 4) - Assert that we always consume all decoder progress and invalidations. r=tn 2014-11-18 01:48:49 -08:00
Seth Fowler
882129275b Bug 1098202 (Part 2) - Rename Progress flags to be consistent with the corresponding notifications. r=tn
--HG--
extra : rebase_source : 9a8c0c3efe55a459c5a9a687e94a7861eb44bc35
2014-11-17 14:29:56 -08:00
Seth Fowler
5376541aef Bug 1089880 (Part 1) - Add a HAS_TRANSPARENCY notification to ImageLib. r=tn 2014-11-17 11:16:45 -08:00
Seth Fowler
007c489ec2 Bug 1098108 (Part 2) - Don't send DECODE_STOPPED or ONLOAD_UNBLOCKED for size decodes. r=tn 2014-11-14 20:10:48 -08:00
Seth Fowler
03cc795af0 Bug 1097432 (Part 3) - Rename imgStatusTracker to ProgressTracker and ImageStatusDiff to Progress. r=tn
--HG--
rename : image/src/imgStatusTracker.cpp => image/src/ProgressTracker.cpp
rename : image/src/imgStatusTracker.h => image/src/ProgressTracker.h
2014-11-14 20:10:47 -08:00
Seth Fowler
d9d70fd0bf Bug 1089046 (Part 1) - Remove imgDecoderObserver and related code. r=tn 2014-11-14 20:06:19 -08:00
Seth Fowler
9a0b7054a5 Bug 1084679 - Track invalidation rects during decoding on Decoder, not imgStatusTracker. r=tn 2014-11-10 12:37:35 -08:00
Ryan VanderMeulen
94b7009ab9 Backed out 5 changesets (bug 1079653) for mochitest-dt asserts on a CLOSED TREE.
Backed out changeset aaac8c671299 (bug 1079653)
Backed out changeset 59d1754eb01f (bug 1079653)
Backed out changeset dfb0890b02be (bug 1079653)
Backed out changeset 546f90c14465 (bug 1079653)
Backed out changeset a8e760faf784 (bug 1079653)
2014-10-15 19:00:12 -04:00
Seth Fowler
987dbea9f5 Bug 1079653 (Part 3) - Make decoders track whether they need to flush data after getting a new frame. r=tn
--HG--
extra : rebase_source : c2022c4dd83dbcc87199b4b51335215cbc9adcb0
2014-10-15 13:52:21 -07:00
Seth Fowler
754c9d71fd Bug 1079653 (Part 1) - Move decode telemetry data from DecodeRequest to Decoder. r=tn
--HG--
extra : rebase_source : cd86116a2df649eb14ce2db55c5b2c2b90b0f4f8
2014-10-15 13:52:21 -07:00
Seth Fowler
d65caebbb0 Bug 1079628 - Record the number of bytes decoded on a per-decoder basis. r=tn
--HG--
extra : rebase_source : d479aeb16595648f61adee8e0ad18558f5d9e6ba
2014-10-15 13:52:20 -07:00
Seth Fowler
0339df9d8d Bug 1054076 - Make imgFrame reference counted. r=tn 2014-08-22 13:49:54 -07:00
Michael Wu
9e075daedc Bug 994081 - [2/3] Convert imgFrame to SourceSurfaces, r=seth 2014-04-19 21:28:38 -04:00
Victor Porof
9ce7e9c089 Bug 1007203 - Always add categories when pushing to the pseudostack, r=djvj 2014-05-23 17:12:29 -04:00
Timothy Nikkel
b54dcfc90d Bug 944353. If we've had a decoder error then the image is not usable. r=seth
This matches what RasterImage will do.
2014-02-26 21:48:51 -06:00
Seth Fowler
8fe99f9dbb Bug 896268 - Use a stateless approach to synchronous image decoding. r=jdm 2013-12-17 14:04:24 -08:00
Ali Akhtarzada
ba614649c2 Bug 890743 - Display 0-delay, single loop GIFs instantly. r=seth
Do not artificially create a frame delay for GIF files
that do not loop and have an inter-frame delay of 0. Move timeout
calculation to FrameBlender and only access raw timeout of
imgFrame from within FrameBlender.

--HG--
extra : rebase_source : 1a568f16a2980d3d14621869c6b536d054088805
2013-12-06 10:45:24 +01:00
Benoit Jacob
55d6cf1e20 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
Ehsan Akhgari
cfc4d18351 Bug 913619 - Minimize the #includes in image/src; r=jrmuizel
This patch was generated by running include-what-you-use on image/src,
and then removing the #include statements suggested by that tool, either
replacing them with forward declarations of the used names in headers,
or dropping the ones that were completely unnecessary, and then adding
new #include statements in other places that were implicitly relying on
some of the removed #include statements.
2013-09-07 09:01:08 -04:00
Seth Fowler
02e2cbfb29 Bug 869723 (Part 1) - Add imgIContainer::GetOrientation. r=joe sr=bz 2013-08-25 00:19:42 -07:00
Phil Ringnalda
64dcba29d5 Back out 353f5b3c81c7:62a1a184b2c3 (Bug 869723 and Bug 870090) for not actually building
CLOSED TREE
2013-08-24 19:13:21 -07:00
Seth Fowler
31264a78de Bug 869723 (Part 1) - Add imgIContainer::GetOrientation. r=joe sr=bz 2013-08-24 17:31:14 -07:00
Milan Sreckovic
39746f41ba Bug 905793 - Send ImageUpdated() on the whole image in PostFrameStop. This may be an overkill in some cases, dirtying twice. r=seth 2013-08-15 17:06:01 -04:00
Joe Drew
00f3c91805 Bug 888499 - Mark frames as dirty in a threadsafe way when imgFrame::ImageUpdated is called on them, and clear that dirty bit when we're drawing. r=seth 2013-07-04 14:45:57 -04:00
Joe Drew
e10ce649b4 Bug 867774 - Create a FrameBlender class that holds on to an image's frames and can blend frames together on demand (while leaving the decision as to which frames to external users). r=seth
FrameBlender steals RasterImage::mFrames, RasterImage::DoComposite, and the
RasterImage blending helper functions CopyFrameImage, DrawFrameTo, and
ClearFrame. Now RasterImage doesn't hold on to its frames directly, and defers
all blending to FrameBlender::DoComposite.

--HG--
extra : rebase_source : f03736045f967f0947441703e54135b98d9dcf54
2013-06-17 16:49:04 -04:00
Joe Drew
30621b3877 Bug 878392 - Reset Decoder::mCurrentFrame to nullptr if we fail to create a frame. r=seth
--HG--
extra : rebase_source : 1188bfd4896c687eb954ac781cd23e2d49a48959
2013-06-07 16:42:57 -04:00
Joe Drew
a0b4c1afc0 Bug 863975 - Handle the situation that we're left mid-frame when decoding a multi-frame image. r=seth
--HG--
extra : rebase_source : e485eb48a615f3e35e4e5592d0f37604402142f8
2013-04-25 16:35:23 -04:00
Benoit Girard
042e2c83ad Bug 851611 - Part 3: Rename headers. r=jrmuizel
--HG--
rename : tools/profiler/sampler.h => tools/profiler/GeckoProfiler.h
rename : tools/profiler/sps_sampler.h => tools/profiler/GeckoProfilerImpl.h
extra : rebase_source : 6ea7c660764a4390cdd8dd91561fff1d7bad6035
2013-03-18 15:25:50 +01:00
Benoit Girard
c47f308258 Bug 851611 - Part 2: Update profiler calls. r=jrmuizel
--HG--
extra : rebase_source : f76accc3d3dd86c75cb3e9750734f23ec9c29941
2013-03-16 00:47:02 -04:00