gecko-dev/image
Andrew Osmond 874ce61a83 Bug 1901078 - Implement promise based anonymous image decoder. r=tnikkel
This bypasses any caching used on the display pipeline and is
intended to be used by layers that want asynchronous decoding
that fits well into the MozPromise style.

This also fixes an issue with the frame count metadata decoder in the
GIF decoder. The code only began being used with this patch, and the WPT
exposed an overflow bug caused by not clearing nsGIFDecoder2::mColormap
and nsGIFDecoder2::mColormapSize.

Differential Revision: https://phabricator.services.mozilla.com/D212833
2024-07-24 03:16:16 +00:00
..
build Bug 1866010 p2. Update UpdateContentViewerRegistration to reflect nsIDocumentViewer's new name. r=emilio 2023-11-24 09:10:48 +00:00
decoders Bug 1901078 - Implement promise based anonymous image decoder. r=tnikkel 2024-07-24 03:16:16 +00:00
encoders Bug 1872536 - Use MakeUniqueFallible for large buffers in image decoders/encoders. r=gfx-reviewers,lsalzman 2023-12-31 22:16:46 +00:00
test Bug 1901076 - Part 2. Expose frame count variant of metadata decoders. r=tnikkel 2024-06-24 22:44:30 +00:00
AnimationFrameBuffer.cpp Bug 1711061 - Part 4. Implement AnimationSurfaceProvider for animated rasterized images. r=tnikkel 2021-11-27 11:47:37 +00:00
AnimationFrameBuffer.h Bug 1711061 - Part 4. Implement AnimationSurfaceProvider for animated rasterized images. r=tnikkel 2021-11-27 11:47:37 +00:00
AnimationParams.h
AnimationSurfaceProvider.cpp Bug 1892643. Allow checking for shutdown in the image decode pool after the decode pool has been cleared. r=gfx-reviewers,nical 2024-05-25 09:45:37 +00:00
AnimationSurfaceProvider.h Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw 2022-03-16 18:47:08 +00:00
AutoRestoreSVGState.h Bug 1808102 - Move contextPaint to Document class r=emilio 2023-01-17 19:13:41 +00:00
BMPHeaders.h Bug 1757929 - Avoid some conflicts with WINDOWS define. r=tnikkel 2022-05-05 11:37:51 +00:00
BlobSurfaceProvider.cpp Bug 1805599. Fix handling of invalidations in non-animated vector images that use the webrender imageprovider path. r=aosmond 2024-05-02 01:45:32 +00:00
BlobSurfaceProvider.h Bug 1805599. Fix handling of invalidations in non-animated vector images that use the webrender imageprovider path. r=aosmond 2024-05-02 01:45:32 +00:00
ClippedImage.cpp Bug 1276351: apply code formatting via Lando 2023-03-27 07:23:36 +00:00
ClippedImage.h Bug 1779598 - Stop passing around Maybe<SVGImageContext>. r=aosmond 2022-07-14 16:03:25 +00:00
CopyOnWrite.h
DecodePool.cpp Bug 1892643. Allow checking for shutdown in the image decode pool after the decode pool has been cleared. r=gfx-reviewers,nical 2024-05-25 09:45:37 +00:00
DecodePool.h Bug 1892643. Allow checking for shutdown in the image decode pool after the decode pool has been cleared. r=gfx-reviewers,nical 2024-05-25 09:45:37 +00:00
DecodedSurfaceProvider.cpp Bug 1805599. Fix handling of invalidations in non-animated vector images that use the webrender imageprovider path. r=aosmond 2024-05-02 01:45:32 +00:00
DecodedSurfaceProvider.h Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw 2022-03-16 18:47:08 +00:00
Decoder.cpp Bug 1901076 - Part 2. Expose frame count variant of metadata decoders. r=tnikkel 2024-06-24 22:44:30 +00:00
Decoder.h Bug 1901076 - Part 2. Expose frame count variant of metadata decoders. r=tnikkel 2024-06-24 22:44:30 +00:00
DecoderFactory.cpp Bug 1901078 - Implement promise based anonymous image decoder. r=tnikkel 2024-07-24 03:16:16 +00:00
DecoderFactory.h Bug 1901078 - Implement promise based anonymous image decoder. r=tnikkel 2024-07-24 03:16:16 +00:00
DecoderFlags.h Bug 1901076 - Part 2. Expose frame count variant of metadata decoders. r=tnikkel 2024-06-24 22:44:30 +00:00
Downscaler.cpp Bug 1857746 - Remove std max in downscaler. r=sylvestre DONTBUILD 2023-10-30 08:12:41 +00:00
Downscaler.h Bug 1773384 - Change the type of Downscaler::mScale to MatrixScalesDouble. r=botond 2022-06-15 22:37:48 +00:00
DownscalingFilter.h Bug 1773385 - Change the type of DownscalingFilter::mScale to MatrixScalesDouble. r=botond 2022-06-17 21:32:10 +00:00
DynamicImage.cpp Bug 1815404 - Replace most uses of gfxContext::CreateOrNull with stack-allocated contexts. r=gfx-reviewers,lsalzman 2023-02-21 07:28:25 +00:00
DynamicImage.h Bug 1778211 - Reject xpidl CDATA containing 'virtual', r=xpcom-reviewers,necko-reviewers,mccr8,dragana 2022-07-06 14:53:06 +00:00
FrameAnimator.cpp Bug 1765116. Don't ignore any potential invalidation rect from calling UpdateState in FrameAnimator::ResetAnimation. r=aosmond 2022-04-22 09:00:42 +00:00
FrameAnimator.h Bug 1711061 - Part 4. Implement AnimationSurfaceProvider for animated rasterized images. r=tnikkel 2021-11-27 11:47:37 +00:00
FrameTimeout.h
FrozenImage.cpp Bug 1779598 - Stop passing around Maybe<SVGImageContext>. r=aosmond 2022-07-14 16:03:25 +00:00
FrozenImage.h Bug 1779598 - Stop passing around Maybe<SVGImageContext>. r=aosmond 2022-07-14 16:03:25 +00:00
ICOFileHeaders.h
IDecodingTask.cpp Bug 1880054. Simplify some imagelib event target code. r=gfx-reviewers,lsalzman 2024-02-25 04:54:33 +00:00
IDecodingTask.h Bug 1894284. Give image gtests a threadsafe way to wait for decodes in the decode thread pool to finish. r=gfx-reviewers,nical 2024-05-22 03:29:18 +00:00
IProgressObserver.h Bug 1880054. Simplify some imagelib event target code. r=gfx-reviewers,lsalzman 2024-02-25 04:54:33 +00:00
ISurfaceProvider.h Bug 1805599. Fix handling of invalidations in non-animated vector images that use the webrender imageprovider path. r=aosmond 2024-05-02 01:45:32 +00:00
Image.cpp Bug 1880054. Simplify some imagelib event target code. r=gfx-reviewers,lsalzman 2024-02-25 04:54:33 +00:00
Image.h Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille 2023-03-27 07:20:25 +00:00
ImageBlocker.cpp Bug 1873474 - Use ImageBlocker directly instead of nsIContentPolicy::ShouldProcess in ImageDocument. r=smaug 2024-01-17 09:49:32 +00:00
ImageBlocker.h Bug 1873474 - Use ImageBlocker directly instead of nsIContentPolicy::ShouldProcess in ImageDocument. r=smaug 2024-01-17 09:49:32 +00:00
ImageCacheKey.cpp Bug 1728331 - Part 5: Respect AppType in ImageCacheKey, r=emilio 2024-06-24 23:19:29 +00:00
ImageCacheKey.h Bug 1728331 - Part 5: Respect AppType in ImageCacheKey, r=emilio 2024-06-24 23:19:29 +00:00
ImageFactory.cpp Bug 1624819 - Remove TaskCategory and other quantum dom remnants. r=smaug,media-playback-reviewers,credential-management-reviewers,cookie-reviewers,places-reviewers,win-reviewers,valentin,mhowell,sgalich,alwu 2023-10-10 08:51:12 +00:00
ImageFactory.h Bug 1756587. Fix a couple of aInnerWindowId parameters to be uint64_t in ImageFactory.cpp. r=aosmond 2022-02-26 07:22:44 +00:00
ImageLogging.h
ImageMemoryReporter.cpp
ImageMemoryReporter.h
ImageMetadata.h Bug 1901076 - Part 2. Expose frame count variant of metadata decoders. r=tnikkel 2024-06-24 22:44:30 +00:00
ImageOps.cpp Bug 1901076 - Part 2. Expose frame count variant of metadata decoders. r=tnikkel 2024-06-24 22:44:30 +00:00
ImageOps.h
ImageRegion.h Bug 1711061 - Part 9. Add blob recording support to SurfaceCache. r=tnikkel 2021-11-27 11:47:39 +00:00
ImageUtils.cpp Bug 1901078 - Implement promise based anonymous image decoder. r=tnikkel 2024-07-24 03:16:16 +00:00
ImageUtils.h Bug 1901078 - Implement promise based anonymous image decoder. r=tnikkel 2024-07-24 03:16:16 +00:00
ImageWrapper.cpp Bug 1779598 - Stop passing around Maybe<SVGImageContext>. r=aosmond 2022-07-14 16:03:25 +00:00
ImageWrapper.h Bug 1778211 - Reject xpidl CDATA containing 'virtual', r=xpcom-reviewers,necko-reviewers,mccr8,dragana 2022-07-06 14:53:06 +00:00
ImgDrawResult.h Bug 1519636 - Reformat recent changes to the Google coding style. r=glandium 2023-02-13 15:02:07 +00:00
LookupResult.h
MultipartImage.cpp Bug 1862059. Handle edge cases of svg images in multipart images. r=aosmond,gfx-reviewers 2024-01-02 07:13:01 +00:00
MultipartImage.h Bug 1530209 - Removed context argument from various methods. r=necko-reviewers,valentin 2021-11-24 11:25:41 +00:00
Orientation.h Bug 1732115 - Part 2. Move OrientedPixel and related to image/Orientation.h. r=tnikkel 2021-10-06 14:41:17 +00:00
OrientedImage.cpp Bug 1815404 - Replace most uses of gfxContext::CreateOrNull with stack-allocated contexts. r=gfx-reviewers,lsalzman 2023-02-21 07:28:25 +00:00
OrientedImage.h Bug 1779598 - Stop passing around Maybe<SVGImageContext>. r=aosmond 2022-07-14 16:03:25 +00:00
PlaybackType.h
ProgressTracker.cpp Bug 1880054. Simplify some imagelib event target code. r=gfx-reviewers,lsalzman 2024-02-25 04:54:33 +00:00
ProgressTracker.h Bug 1880054. Simplify some imagelib event target code. r=gfx-reviewers,lsalzman 2024-02-25 04:54:33 +00:00
RasterImage.cpp Bug 1901076 - Part 1. Include animated images loop count in metadata decoding results. r=tnikkel 2024-06-24 22:44:30 +00:00
RasterImage.h Bug 1813466 - Store AVIF prefs as default decoder flags in RasterImage. r=tnikkel 2023-03-17 00:50:07 +00:00
Resolution.h
SVGDocumentWrapper.cpp Bug 196078 - Part 2: Support displaying arbitrary text/* MIME types as plain text, r=smaug,necko-reviewers,valentin 2024-06-05 00:05:58 +00:00
SVGDocumentWrapper.h Bug 1865480. Rename nsIContentViewer to nsIDocumentViewer. r=layout-reviewers,emilio 2023-11-21 12:45:59 +00:00
SVGDrawingCallback.h
SVGDrawingParameters.h Bug 1519636 - Reformat recent changes to the Google coding style. r=marco 2022-07-15 08:27:50 +00:00
ScriptedNotificationObserver.cpp
ScriptedNotificationObserver.h
ShutdownTracker.cpp
ShutdownTracker.h
SourceBuffer.cpp Bug 1273714: Remove an imagelib warning that's more spammy than useful at this point. r=tnikkel DONTBUILD 2023-09-27 23:27:13 +00:00
SourceBuffer.h Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato 2022-08-03 16:39:41 +00:00
StreamingLexer.h
SurfaceCache.cpp Bug 1805599. Fix handling of invalidations in non-animated vector images that use the webrender imageprovider path. r=aosmond 2024-05-02 01:45:32 +00:00
SurfaceCache.h Bug 1805599. Fix handling of invalidations in non-animated vector images that use the webrender imageprovider path. r=aosmond 2024-05-02 01:45:32 +00:00
SurfaceCacheUtils.cpp
SurfaceCacheUtils.h
SurfaceFilters.h
SurfaceFlags.h Bug 1711061 - Part 9. Add blob recording support to SurfaceCache. r=tnikkel 2021-11-27 11:47:39 +00:00
SurfacePipe.cpp Bug 1732115 - Part 4. Add/use reorienting decoding pipeline. r=tnikkel 2021-10-06 14:41:18 +00:00
SurfacePipe.h Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille 2023-03-27 07:20:25 +00:00
SurfacePipeFactory.h Bug 1732115 - Part 4. Add/use reorienting decoding pipeline. r=tnikkel 2021-10-06 14:41:18 +00:00
VectorImage.cpp Bug 1805599. Fix handling of invalidations in non-animated vector images that use the webrender imageprovider path. r=aosmond 2024-05-02 01:45:32 +00:00
VectorImage.h Bug 1276351 - Move away from mozilla::tuple to std::tuple. r=necko-reviewers,sergesanspaille 2023-03-27 07:20:25 +00:00
WebRenderImageProvider.h Bug 1805599. Fix handling of invalidations in non-animated vector images that use the webrender imageprovider path. r=aosmond 2024-05-02 01:45:32 +00:00
imgFrame.cpp Bug 1815404 - Replace most uses of gfxContext::CreateOrNull with stack-allocated contexts. r=gfx-reviewers,lsalzman 2023-02-21 07:28:25 +00:00
imgFrame.h Bug 1856795 - ride along: use = default; on some recently modified files r=emilio 2023-10-15 15:29:03 +00:00
imgICache.idl
imgIContainer.idl Bug 1779598 - Stop passing around Maybe<SVGImageContext>. r=aosmond 2022-07-14 16:03:25 +00:00
imgIContainerDebug.idl
imgIEncoder.idl Bug 1348272 - Mark nsIInputStream and nsIOutputStream as builtinclass, r=xpcom-reviewers,necko-reviewers,barret,valentin 2022-09-09 18:22:36 +00:00
imgILoader.idl
imgINotificationObserver.idl
imgIRequest.idl Bug 1881863 - Part 1: Standardize on boolean over bool in xpidl, r=xpcom-reviewers,necko-reviewers,valentin,extension-reviewers,application-update-reviewers,media-playback-reviewers,credential-management-reviewers,search-reviewers,anti-tracking-reviewers,places-reviewers,nalexander,emilio,zombie,sgalich,karlt,lina,Standard8 2024-04-04 18:45:21 +00:00
imgIScriptedNotificationObserver.idl
imgITools.idl
imgLoader.cpp Bug 1904004 - Use OriginAttributes::IsPrivateBrowsing instead of open coding PBM checks. r=timhuang,cookie-reviewers,anti-tracking-reviewers,profiler-reviewers,necko-reviewers,kershaw,dom-storage-reviewers,janv,canaltinova,dom-worker-reviewers,asuth 2024-06-24 11:06:18 +00:00
imgLoader.h Bug 1893402 - Part 2: Use minimum cache expiration time in image cache. r=tnikkel 2024-05-17 11:20:59 +00:00
imgRequest.cpp Bug 1895211. Get the image in imgRequest::OnStopRequest after calling OnDataAvailable because that might create the image. r=gfx-reviewers,nical 2024-05-17 23:26:18 +00:00
imgRequest.h Bug 1893402 - Part 2: Use minimum cache expiration time in image cache. r=tnikkel 2024-05-17 11:20:59 +00:00
imgRequestProxy.cpp Bug 1624819 - Remove TaskCategory and other quantum dom remnants. r=smaug,media-playback-reviewers,credential-management-reviewers,cookie-reviewers,places-reviewers,win-reviewers,valentin,mhowell,sgalich,alwu 2023-10-10 08:51:12 +00:00
imgRequestProxy.h Bug 1874756 - Simplify and reduce the number of hashtable lookups for LCP implementation r=emilio 2024-07-23 20:42:40 +00:00
imgTools.cpp Bug 1519636 - Reformat recent changes to the Google coding style r=emilio,necko-reviewers,geckoview-reviewers,application-update-reviewers,media-playback-reviewers,devtools-reviewers,anti-tracking-reviewers,profiler-reviewers,win-reviewers,migration-reviewers,padenot,mconley,nchevobbe,kershaw,gstoll,mstange,bytesized,m_kato 2024-07-17 11:15:31 +00:00
imgTools.h
moz.build Bug 1901078 - Implement promise based anonymous image decoder. r=tnikkel 2024-07-24 03:16:16 +00:00
nsIIconURI.idl Bug 1883217 - Remove unused defines in IDL files r=webdriver-reviewers,necko-reviewers,credential-management-reviewers,places-reviewers,dom-core,Standard8,valentin,mccr8,sgalich 2024-03-06 19:04:25 +00:00