aboutsummaryrefslogtreecommitdiff
path: root/third_party/gif_decoder
AgeCommit message (Collapse)Author
2014-12-03Merge tag 'v3.4.0' of https://github.com/bumptech/glide into ub-camera-haleakalaAlan Newberger
Change-Id: Ic290a947323184bfd15576a781bceb88258a5dd1
2014-11-05Use set style for imports.Sam Judd
2014-11-03Pull out testutil project.Sam Judd
2014-11-03Replace Hamcrest with Truth.Sam Judd
Fewer static imports, better wrangling of generics (particularly when asserting contains), and, least of all, better internal support.
2014-11-02Explicitly set JUnit4 runner for junit tests.Sam Judd
2014-11-02Move TestUtil in gif decoder into test package.Sam Judd
2014-11-02Set fixed dependency versions using properties.Sam Judd
2014-10-26Protect error logging with DEBUG property.Sam Judd
Fixes #171.
2014-10-26Always use ARGB_8888 to decode gif frames.Sam Judd
Fixes #216.
2014-10-26Synchronize gif decoder getNextFrame.Sam Judd
This does not make GifDecoder thread safe in that it doesn't guarantee that a decoder will decode a particular frame, but should keep state consistent and prevent crashes from concurrent writes to buffers. Fixes #212.
2014-10-23Document width/height values.Sam Judd
Fixes #145.
2014-10-23Clear data from GifHeaderParsers before pooling.Sam Judd
2014-10-22Return null when gif frame cannot be decoded.Sam Judd
More work toward #212.
2014-10-21Set minimum and default frame delays.Sam Judd
Fixes #205.
2014-10-21Merge remote-tracking branch 'bump/master' into HEADAlan Newberger
Bug: 18059638 Conflicts: .gitmodules library/src/androidTest/java/com/bumptech/glide/BitmapTypeRequestTest.java library/src/androidTest/java/com/bumptech/glide/DrawableTypeRequestTest.java library/src/androidTest/java/com/bumptech/glide/GenericRequestBuilderTest.java library/src/androidTest/java/com/bumptech/glide/GenericTranscodeRequestTest.java library/src/androidTest/java/com/bumptech/glide/GlideTest.java library/src/androidTest/java/com/bumptech/glide/ListPreloaderTest.java library/src/androidTest/java/com/bumptech/glide/RequestManagerTest.java library/src/androidTest/java/com/bumptech/glide/load/MultiTransformationTest.java library/src/androidTest/java/com/bumptech/glide/load/data/LocalUriFetcherTest.java library/src/androidTest/java/com/bumptech/glide/load/data/MediaStoreThumbFetcherTest.java library/src/androidTest/java/com/bumptech/glide/load/data/ThumbnailStreamOpenerFactoryTest.java library/src/androidTest/java/com/bumptech/glide/load/data/ThumbnailStreamOpenerTest.java library/src/androidTest/java/com/bumptech/glide/load/data/resource/ByteArrayFetcherTest.java library/src/androidTest/java/com/bumptech/glide/load/data/resource/FileDescriptorLocalUriFetcherTest.java library/src/androidTest/java/com/bumptech/glide/load/data/resource/StreamLocalUriFetcherTest.java library/src/androidTest/java/com/bumptech/glide/load/engine/CacheLoaderTest.java library/src/androidTest/java/com/bumptech/glide/load/engine/EngineTest.java library/src/androidTest/java/com/bumptech/glide/load/engine/bitmap_recycle/AttributeStrategyTest.java library/src/androidTest/java/com/bumptech/glide/load/engine/bitmap_recycle/LruBitmapPoolTest.java library/src/androidTest/java/com/bumptech/glide/load/engine/cache/DiskLruCacheWrapperTest.java library/src/androidTest/java/com/bumptech/glide/load/engine/cache/LruCacheTest.java library/src/androidTest/java/com/bumptech/glide/load/engine/cache/LruResourceCacheTest.java library/src/androidTest/java/com/bumptech/glide/load/engine/cache/MemorySizeCalculatorTest.java library/src/androidTest/java/com/bumptech/glide/load/engine/executor/FifoPriorityThreadPoolExecutorTest.java library/src/androidTest/java/com/bumptech/glide/load/model/ImageVideoModelLoaderTest.java library/src/androidTest/java/com/bumptech/glide/load/model/ImageVideoWrapperEncoderTest.java library/src/androidTest/java/com/bumptech/glide/load/model/StreamEncoderTest.java library/src/androidTest/java/com/bumptech/glide/load/model/stream/MediaStoreStreamLoaderTest.java library/src/androidTest/java/com/bumptech/glide/load/model/stream/ResourceLoaderTest.java library/src/androidTest/java/com/bumptech/glide/load/model/stream/StreamByteArrayLoaderTest.java library/src/androidTest/java/com/bumptech/glide/load/model/stream/StringLoaderTest.java library/src/androidTest/java/com/bumptech/glide/load/model/stream/UriLoaderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/NullDecoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/UnitTransformationTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bitmap/BitmapDrawableResourceTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bitmap/BitmapEncoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bitmap/BitmapResourceTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bitmap/CenterCropTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bitmap/DownsamplerTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bitmap/FitCenterTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bitmap/ImageVideoBitmapDecoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bitmap/StreamBitmapDecoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bitmap/VideoBitmapDecoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/bytes/BytesResourceTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/gif/GifFrameModelLoaderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/gif/GifFrameResourceDecoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/gifbitmap/GifBitmapResourceEncoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/gifbitmap/GifBitmapStreamResourceDecoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/gifbitmap/GifBitmapWrapperResourceEncoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/gifbitmap/GifBitmapWrapperResourceTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/gifbitmap/GifBitmapWrapperStreamResourceDecoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/gifbitmap/GifBitmapWrapperTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/gifbitmap/GifBitmapWrapperTransformationTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/transcode/BitmapBytesTranscoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/transcode/GifBitmapWrapperDrawableTranscoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/transcode/GlideBitmapDrawableTranscoderTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/transcode/TranscoderRegistryTest.java library/src/androidTest/java/com/bumptech/glide/load/resource/transcode/UnitTranscoderTest.java library/src/androidTest/java/com/bumptech/glide/manager/ConnectivityMonitorFactoryTest.java library/src/androidTest/java/com/bumptech/glide/manager/DefaultConnectivityMonitorTest.java library/src/androidTest/java/com/bumptech/glide/manager/RequestManagerFragmentTest.java library/src/androidTest/java/com/bumptech/glide/manager/RequestManagerRetrieverTest.java library/src/androidTest/java/com/bumptech/glide/provider/ChildLoadProviderTest.java library/src/androidTest/java/com/bumptech/glide/provider/DataLoadProviderRegistryTest.java library/src/androidTest/java/com/bumptech/glide/request/target/ViewTargetTest.java library/src/androidTest/java/com/bumptech/glide/resize/load/ExifTest.java library/src/androidTest/java/com/bumptech/glide/tests/ContentResolverShadow.java library/src/androidTest/java/com/bumptech/glide/tests/GlideShadowLooper.java library/src/androidTest/java/com/bumptech/glide/util/ByteArrayPoolTest.java library/src/androidTest/resources/org.robolectric.Config.properties library/src/main/java/com/bumptech/glide/BitmapRequestBuilder.java library/src/main/java/com/bumptech/glide/GenericRequestBuilder.java library/src/main/java/com/bumptech/glide/load/engine/Engine.java library/src/main/java/com/bumptech/glide/load/resource/bitmap/FileDescriptorBitmapDecoder.java library/src/main/java/com/bumptech/glide/load/resource/bitmap/StreamBitmapDecoder.java library/src/main/java/com/bumptech/glide/load/resource/bitmap/TransformationUtils.java library/src/main/java/com/bumptech/glide/load/resource/gif/GifFrameManager.java library/src/main/java/com/bumptech/glide/load/resource/transcode/TranscoderFactory.java library/src/main/java/com/bumptech/glide/provider/DataLoadProviderFactory.java library/src/main/java/com/bumptech/glide/request/ThumbnailRequestCoordinator.java samples/flickr/build.gradle samples/flickr/src/main/AndroidManifest.xml samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrModelLoader.java samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoList.java samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrSearchActivity.java samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/PhotoViewer.java samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/api/Api.java samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/api/Photo.java samples/flickr/src/main/res/anim/fade_in.xml samples/flickr/src/main/res/drawable-hdpi/ic_launcher.png samples/flickr/src/main/res/drawable-ldpi/ic_launcher.png samples/flickr/src/main/res/drawable-mdpi/ic_launcher.png samples/flickr/src/main/res/drawable-xhdpi/ic_launcher.png samples/flickr/src/main/res/layout/flickr_photo_grid.xml samples/flickr/src/main/res/layout/flickr_photo_grid_item.xml samples/flickr/src/main/res/layout/flickr_photo_list.xml samples/flickr/src/main/res/layout/flickr_photo_list_item.xml samples/flickr/src/main/res/layout/flickr_search_activity.xml samples/flickr/src/main/res/values/colors.xml samples/flickr/src/main/res/values/dimens.xml samples/flickr/src/main/res/values/strings.xml samples/svg/src/main/res/drawable-xhdpi/ic_launcher.png Change-Id: I27376c117937c6a308b1015313a91eedbf0e95b8
2014-10-21Clean up GifDrawable resources more reliably.Sam Judd
Each time we call get() on a drawable resource, we get a new Drawable. We call get() repeatedly on resources when they are retrieved from either the set of active resources or the in memory cache. Each time we create a new GifDrawable it holds on to one or two temporary Bitmaps outside it's shared state to render the current frame and obey the dispose_previous method. This change means we more aggressively cleanup those resources when we think each Drawable is no longer being used. The side affect is that we may reset back to the beginning of the Drawable in some circumstances. Cleanup in in memory resources makes it less likely that frames would be retrieved from in memory, so this also works toward #207.
2014-10-21Always decode gif frames in sequence.Sam Judd
Fixes #207.
2014-10-20Update readmes for gif_encoder and gif_decoder.Sam Judd
2014-10-19Reset frame pointer in setData in GifDecoder.Sam Judd
Fixes #204.
2014-10-19Decode GIFs with more codes than can fit in table.Sam Judd
Fixes #203
2014-10-19Set transIndex for GIFs with transparent pixels.Sam Judd
Fixes #201.
2014-10-18Skip image blocks in parser.Sam Judd
2014-10-18Add tests for local color tables in gif parser.Sam Judd
2014-10-17Add api to set default decode format.Sam Judd
Fixes #177.
2014-10-02Add a GifEncoder/GifResourceEncoder.Sam Judd
2014-09-28Decode first gif frame before returning resource.Sam Judd
Fixes #159.
2014-09-14Allow GIFs without Graphics Control Extensions.Sam Judd
The GCE is an optional extension that may or may not be included per frame (it's slightly more complicated than this), we shouldn't throw if it isn't present. Fixes #134.
2014-09-01Update license.Sam Judd
2014-09-01Make .gradle files a little more uniform with 'strings'Robert Papp
2014-08-31Fix some comments: - typos, - documented empty blocks, - shortened some ↵Robert Papp
{@link}s, - converted some multi-line comments to single-line/javadocs.
2014-08-17Cleanup gif decoder build.Sam Judd
2014-08-17Remove maven pom files.Sam Judd
2014-08-17Upload a single jar rather than all subprojects.Sam Judd
2014-08-05Fold GifData into GifDrawable.Sam Judd
2014-08-03Fix concurrency exceptions in GifResourceDecoder.Sam Judd
2014-07-14Add checkstyle for javadocs.Sam Judd
2014-07-14Fix issues with artifacts in certain gif frames.Sam Judd
2014-07-11Fix exception when GIF can't be decodedSam Judd
We get a GifHeader object, but it has 0 frames which eventually causes a divide by zero exception. Since the real problem is that we couldn't decode the gif, we check in the decoder if the decode failed and then simply return null.
2014-07-10Provide final frame dimensions to GifDrawable.Sam Judd
This allows the intrinsic width and height to be constant which plays more nicely with the android framework.
2014-07-05Cleanup build and depend on local upload script.Sam Judd
2014-07-02Add checkstyle plugin and and fix style issues.Sam Judd
2014-06-29Update gradle plugin version.Sam Judd
2014-06-27Add gradle snapshot deployment.Sam Judd
2014-06-22Working auto import into intellij using pom filesSam Judd
2014-06-22Fix android studio gradle build and lint errors.Sam Judd
2014-06-22Add jar target and get AndroidStudio 0.6.2 working.Sam Judd
2014-06-21Fix the gradle build..Emil Arfvidsson
gif decoder is being built as a sub project while other dependencies are acquired via maven.
2014-06-17Fix exception where currentImage is manipulated.Sam Judd
2014-06-16Fix gifs showing images from recycled bitmaps.Sam Judd
2014-06-16Move GifDecoder related classes into third_party.Sam Judd