WebKit Bugzilla
Attachment 368485 Details for
Bug 197384
: [CG] Add support for HEIF-sequence (‘public.heics’) images
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-197384-20190429133926.patch (text/plain), 3.03 KB, created by
Said Abou-Hallawa
on 2019-04-29 13:39:27 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Said Abou-Hallawa
Created:
2019-04-29 13:39:27 PDT
Size:
3.03 KB
patch
obsolete
>Subversion Revision: 244713 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 58ac5beecb417e15e6399ab7dd4623746c3dec10..2f166c17c920bfc8cc7c40164bea83f5d7a8c961 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,16 @@ >+2019-04-29 Said Abou-Hallawa <sabouhallawa@apple.com> >+ >+ [CG] Adding support for HEIF-sequence ('public.heics') images >+ https://bugs.webkit.org/show_bug.cgi?id=197384 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Get the image repetitionCount and the frame duration. >+ >+ * platform/graphics/cg/ImageDecoderCG.cpp: >+ (WebCore::ImageDecoderCG::repetitionCount const): >+ (WebCore::ImageDecoderCG::frameDurationAtIndex const): >+ > 2019-04-26 Commit Queue <commit-queue@webkit.org> > > Unreviewed, rolling out r244708. >diff --git a/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp b/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp >index f67c5274fda8d39a30d511d8739f78a41f795756..d7938a67590ed57f9bcdc7dc25518689ff9024ee 100644 >--- a/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp >+++ b/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp >@@ -261,7 +261,11 @@ RepetitionCount ImageDecoderCG::repetitionCount() const > CFNumberGetValue(num, kCFNumberIntType, &loopCount); > return loopCount ? loopCount : RepetitionCountInfinite; > } >- >+ >+ // HEIF-sequence ('public.heics') image does not define a loopCount for its sequence. >+ if (CFDictionaryGetValue(properties.get(), kCGImagePropertyHEICSDictionary)) >+ return RepetitionCountInfinite; >+ > // Turns out we're not an animated image after all, so we don't animate. > return RepetitionCountNone; > } >@@ -343,7 +347,7 @@ Seconds ImageDecoderCG::frameDurationAtIndex(size_t index) const > CFNumberGetValue(num, kCFNumberFloatType, &value); > } > } >- >+ > CFDictionaryRef pngProperties = (CFDictionaryRef)CFDictionaryGetValue(properties.get(), kCGImagePropertyPNGDictionary); > if (pngProperties) { > if (CFNumberRef num = (CFNumberRef)CFDictionaryGetValue(pngProperties, WebCoreCGImagePropertyAPNGUnclampedDelayTime)) >@@ -351,6 +355,14 @@ Seconds ImageDecoderCG::frameDurationAtIndex(size_t index) const > else if (CFNumberRef num = (CFNumberRef)CFDictionaryGetValue(pngProperties, WebCoreCGImagePropertyAPNGDelayTime)) > CFNumberGetValue(num, kCFNumberFloatType, &value); > } >+ >+ CFDictionaryRef heicsProperties = (CFDictionaryRef)CFDictionaryGetValue(properties.get(), kCGImagePropertyHEICSDictionary); >+ if (heicsProperties) { >+ if (CFNumberRef num = (CFNumberRef)CFDictionaryGetValue(heicsProperties, kCGImagePropertyHEICSUnclampedDelayTime)) >+ CFNumberGetValue(num, kCFNumberFloatType, &value); >+ else if (CFNumberRef num = (CFNumberRef)CFDictionaryGetValue(heicsProperties, kCGImagePropertyHEICSDelayTime)) >+ CFNumberGetValue(num, kCFNumberFloatType, &value); >+ } > } > > Seconds duration(value);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 197384
:
368485
|
368632
|
369055
|
369059
|
369063
|
369067
|
369128
|
369136
|
369169
|
369205
|
369524
|
369538
|
369556
|
369819