diff --git a/library/src/com/bumptech/glide/BitmapRequestBuilder.java b/library/src/com/bumptech/glide/BitmapRequestBuilder.java index 2c89842cbe2b71a5d56e6dbddbc28c626eac228f..62c0a27a0341f14367dec7e7ebb032005dbd9b7a 100644 --- a/library/src/com/bumptech/glide/BitmapRequestBuilder.java +++ b/library/src/com/bumptech/glide/BitmapRequestBuilder.java @@ -12,6 +12,7 @@ import com.bumptech.glide.load.data.bitmap.CenterCrop; import com.bumptech.glide.load.data.bitmap.Downsampler; import com.bumptech.glide.load.data.bitmap.FitCenter; import com.bumptech.glide.load.data.bitmap.StreamBitmapDecoder; +import com.bumptech.glide.load.engine.Engine; import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; import com.bumptech.glide.provider.LoadProvider; import com.bumptech.glide.request.bitmap.RequestListener; @@ -35,8 +36,8 @@ public class BitmapRequestBuilder extends GenericRequestBuilder streamLoadProvider, LoadProvider fileDescriptorLoadProvider, - BitmapPool bitmapPool, ImageViewTargetFactory factory) { - super(context, model, streamLoadProvider, fileDescriptorLoadProvider, Bitmap.class, factory); + BitmapPool bitmapPool, ImageViewTargetFactory factory, Engine engine) { + super(context, model, streamLoadProvider, fileDescriptorLoadProvider, Bitmap.class, factory, engine); this.bitmapPool = bitmapPool; } @@ -139,7 +140,7 @@ public class BitmapRequestBuilder extends GenericRequestBuilder centerCrop() { - return transform(new CenterCrop(Glide.get(context).getBitmapPool())); + return transform(new CenterCrop(bitmapPool)); } /** @@ -148,7 +149,7 @@ public class BitmapRequestBuilder extends GenericRequestBuilder fitCenter() { - return transform(new FitCenter(Glide.get(context).getBitmapPool())); + return transform(new FitCenter(bitmapPool)); } @Override diff --git a/library/src/com/bumptech/glide/GenericRequestBuilder.java b/library/src/com/bumptech/glide/GenericRequestBuilder.java index 2ba49fdaef19c3e44eb12393b9c23bf6f008f718..825aec104b554b3fa41e8905c1dba01a387de1a0 100644 --- a/library/src/com/bumptech/glide/GenericRequestBuilder.java +++ b/library/src/com/bumptech/glide/GenericRequestBuilder.java @@ -12,6 +12,7 @@ import com.bumptech.glide.load.Transformation; import com.bumptech.glide.load.data.bitmap.BitmapDecoder; import com.bumptech.glide.load.data.bitmap.Downsampler; import com.bumptech.glide.load.data.bitmap.VideoBitmapDecoder; +import com.bumptech.glide.load.engine.Engine; import com.bumptech.glide.load.model.ModelLoader; import com.bumptech.glide.provider.ChildLoadProvider; import com.bumptech.glide.provider.LoadProvider; @@ -48,6 +49,7 @@ public class GenericRequestBuilder videoLoadProvider; private final Class resourceClass; private final ImageViewTargetFactory viewTargetFactory; + private final Engine engine; private int animationId; private Animation animation; private int placeholderId; @@ -63,9 +65,11 @@ public class GenericRequestBuilder imageLoadProvider, LoadProvider videoLoadProvider, - Class resourceClass, ImageViewTargetFactory viewTargetFactory) { + Class resourceClass, ImageViewTargetFactory viewTargetFactory, + Engine engine) { this.resourceClass = resourceClass; this.viewTargetFactory = viewTargetFactory; + this.engine = engine; this.imageLoadProvider = imageLoadProvider != null ? new ChildLoadProvider(imageLoadProvider) : null; this.videoLoadProvider = videoLoadProvider != null ? @@ -430,7 +434,7 @@ public class GenericRequestBuilder(loadProvider, model, context, priority, target, sizeMultiplier, placeholderDrawable, placeholderId, errorPlaceholder, errorId, requestListener, - animationId, animation, requestCoordinator, Glide.get(context).getEngine(), getFinalTransformation(), + animationId, animation, requestCoordinator, engine, getFinalTransformation(), resourceClass); } diff --git a/library/src/com/bumptech/glide/Glide.java b/library/src/com/bumptech/glide/Glide.java index e77748e80bb1932280711f618c301a7881967989..1deba01deac4deb5ed85447eafd69760f06c5796 100644 --- a/library/src/com/bumptech/glide/Glide.java +++ b/library/src/com/bumptech/glide/Glide.java @@ -167,14 +167,6 @@ public class Glide { register(GlideUrl.class, InputStream.class, new VolleyUrlLoader.Factory(requestQueue)); } - Engine getEngine() { - return engine; - } - - BitmapPool getBitmapPool() { - return bitmapPool; - } - private GenericLoaderFactory getLoaderFactory() { return loaderFactory; } @@ -396,8 +388,8 @@ public class Glide { */ public static ModelRequest with(Context context) { Glide glide = Glide.get(context); - return new ModelRequest(context, glide.defaultStreamProvider, - glide.defaultFileDescriptorProvider, glide.bitmapPool, glide.factory); + return new ModelRequest(context, glide.defaultStreamProvider, glide.defaultFileDescriptorProvider, + glide.bitmapPool, glide.factory, glide.engine); } /** @@ -409,15 +401,17 @@ public class Glide { private final DataLoadProvider fileDescriptorDataProvider; private BitmapPool bitmapPool; private ImageViewTargetFactory factory; + private Engine engine; private ModelRequest(Context context, DataLoadProvider streamDataProvider, DataLoadProvider fileDescriptorDataProvider, - BitmapPool bitmapPool, ImageViewTargetFactory factory) { + BitmapPool bitmapPool, ImageViewTargetFactory factory, Engine engine) { this.context = context; this.streamDataProvider = streamDataProvider; this.fileDescriptorDataProvider = fileDescriptorDataProvider; this.bitmapPool = bitmapPool; this.factory = factory; + this.engine = engine; } /** @@ -429,7 +423,7 @@ public class Glide { * @return A new {@link ImageModelRequest}. */ public ImageModelRequest using(final StreamModelLoader modelLoader) { - return new ImageModelRequest(context, modelLoader, streamDataProvider, bitmapPool, factory); + return new ImageModelRequest(context, modelLoader, streamDataProvider, bitmapPool, factory, engine); } /** @@ -439,7 +433,7 @@ public class Glide { * @return A new {@link ImageModelRequest}. */ public ImageModelRequest using(StreamByteArrayLoader modelLoader) { - return new ImageModelRequest(context, modelLoader, streamDataProvider, bitmapPool, factory); + return new ImageModelRequest(context, modelLoader, streamDataProvider, bitmapPool, factory, engine); } /** @@ -451,7 +445,8 @@ public class Glide { * @return A new {@link VideoModelRequest}. */ public VideoModelRequest using(final FileDescriptorModelLoader modelLoader) { - return new VideoModelRequest(context, modelLoader, fileDescriptorDataProvider, bitmapPool, factory); + return new VideoModelRequest(context, modelLoader, fileDescriptorDataProvider, bitmapPool, factory, + engine); } /** @@ -565,7 +560,7 @@ public class Glide { LoadProvider loadProvider = new FixedLoadProvider(loader, streamDataProvider); - return new BitmapRequestBuilder(context, model, loadProvider, null, bitmapPool, factory); + return new BitmapRequestBuilder(context, model, loadProvider, null, bitmapPool, factory, engine); } /** @@ -625,7 +620,7 @@ public class Glide { fileDescriptorDataProvider); } return new BitmapRequestBuilder(context, model, streamLoadProvider, fileDescriptorLoadProvider, - bitmapPool, factory); + bitmapPool, factory, engine); } } @@ -641,21 +636,23 @@ public class Glide { private DataLoadProvider dataLoadProvider; private BitmapPool bitmapPool; private ImageViewTargetFactory factory; + private Engine engine; private VideoModelRequest(Context context, ModelLoader loader, DataLoadProvider dataLoadProvider, BitmapPool bitmapPool, - ImageViewTargetFactory factory) { + ImageViewTargetFactory factory, Engine engine) { this.context = context; this.loader = loader; this.dataLoadProvider = dataLoadProvider; this.bitmapPool = bitmapPool; this.factory = factory; + this.engine = engine; } public BitmapRequestBuilder loadFromVideo(T model) { return new BitmapRequestBuilder(context, model, null, new FixedLoadProvider(loader, dataLoadProvider), bitmapPool, - factory); + factory, engine); } } @@ -671,20 +668,23 @@ public class Glide { private DataLoadProvider dataLoadProvider; private BitmapPool bitmapPool; private ImageViewTargetFactory factory; + private Engine engine; private ImageModelRequest(Context context, ModelLoader loader, DataLoadProvider dataLoadProvider, BitmapPool bitmapPool, - ImageViewTargetFactory factory) { + ImageViewTargetFactory factory, Engine engine) { this.context = context; this.loader = loader; this.dataLoadProvider = dataLoadProvider; this.bitmapPool = bitmapPool; this.factory = factory; + this.engine = engine; } public BitmapRequestBuilder load(T model) { return new BitmapRequestBuilder(context, model, - new FixedLoadProvider(loader, dataLoadProvider), null, bitmapPool, factory); + new FixedLoadProvider(loader, dataLoadProvider), null, bitmapPool, factory, + engine); } }