diff --git a/app/build.gradle b/app/build.gradle index 2db3b94bd..fd3cab090 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -90,6 +90,7 @@ dependencies { implementation project(':storage:database') implementation project(':ui:app-start-intent') implementation project(':ui:common') + implementation project(':ui:glide') implementation project(':ui:i18n') implementation project(':ui:statistics') @@ -112,7 +113,6 @@ dependencies { implementation "commons-io:commons-io:$commonsioVersion" implementation "org.jsoup:jsoup:$jsoupVersion" implementation "com.github.bumptech.glide:glide:$glideVersion" - annotationProcessor "com.github.bumptech.glide:compiler:$glideVersion" implementation "com.squareup.okhttp3:okhttp:$okhttpVersion" implementation "com.squareup.okhttp3:okhttp-urlconnection:$okhttpVersion" implementation "com.squareup.okio:okio:$okioVersion" diff --git a/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java index 67394018f..3a979d95d 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java @@ -38,8 +38,6 @@ import de.danoeh.antennapod.core.feed.FeedUrlNotFoundException; import de.danoeh.antennapod.core.util.DownloadErrorLabel; import de.danoeh.antennapod.event.FeedListUpdateEvent; import de.danoeh.antennapod.event.PlayerStatusEvent; -import de.danoeh.antennapod.core.glide.ApGlideSettings; -import de.danoeh.antennapod.core.glide.FastBlurTransformation; import de.danoeh.antennapod.core.preferences.PlaybackPreferences; import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.core.service.download.DownloadRequest; @@ -65,6 +63,7 @@ import de.danoeh.antennapod.model.feed.Feed; import de.danoeh.antennapod.model.feed.FeedPreferences; import de.danoeh.antennapod.model.playback.RemoteMedia; import de.danoeh.antennapod.parser.feed.UnsupportedFeedtypeException; +import de.danoeh.antennapod.ui.glide.FastBlurTransformation; import io.reactivex.Maybe; import io.reactivex.Observable; import io.reactivex.android.schedulers.AndroidSchedulers; @@ -431,7 +430,6 @@ public class OnlineFeedViewActivity extends AppCompatActivity { .apply(new RequestOptions() .placeholder(R.color.light_gray) .error(R.color.light_gray) - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .fitCenter() .dontAnimate()) .into(viewBinding.coverImage); @@ -440,7 +438,6 @@ public class OnlineFeedViewActivity extends AppCompatActivity { .apply(new RequestOptions() .placeholder(R.color.image_readability_tint) .error(R.color.image_readability_tint) - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .transform(new FastBlurTransformation()) .dontAnimate()) .into(viewBinding.backgroundImage); diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/ChaptersListAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/ChaptersListAdapter.java index 20a50308f..2b11c5ff9 100644 --- a/app/src/main/java/de/danoeh/antennapod/adapter/ChaptersListAdapter.java +++ b/app/src/main/java/de/danoeh/antennapod/adapter/ChaptersListAdapter.java @@ -16,7 +16,6 @@ import com.bumptech.glide.load.resource.bitmap.RoundedCorners; import com.bumptech.glide.request.RequestOptions; import de.danoeh.antennapod.R; import de.danoeh.antennapod.model.feed.Chapter; -import de.danoeh.antennapod.core.glide.ApGlideSettings; import de.danoeh.antennapod.core.util.Converter; import de.danoeh.antennapod.model.feed.EmbeddedChapterImage; import de.danoeh.antennapod.core.util.IntentUtils; @@ -106,7 +105,6 @@ public class ChaptersListAdapter extends RecyclerView.Adapter .apply(new RequestOptions() .placeholder(R.color.light_gray) .error(R.color.light_gray) - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .transform(new FitCenter(), new RoundedCorners((int) (4 * context.getResources().getDisplayMetrics().density))) .dontAnimate()) diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/CoverFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/CoverFragment.java index 94a697893..1632c1fb4 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/CoverFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/CoverFragment.java @@ -32,7 +32,6 @@ import com.google.android.material.snackbar.Snackbar; import de.danoeh.antennapod.R; import de.danoeh.antennapod.activity.MainActivity; import de.danoeh.antennapod.core.feed.util.ImageResourceUtils; -import de.danoeh.antennapod.core.glide.ApGlideSettings; import de.danoeh.antennapod.core.util.ChapterUtils; import de.danoeh.antennapod.core.util.DateFormatter; import de.danoeh.antennapod.core.util.playback.PlaybackController; @@ -268,7 +267,6 @@ public class CoverFragment extends Fragment { private void displayCoverImage() { RequestOptions options = new RequestOptions() - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .dontAnimate() .transform(new FitCenter(), new RoundedCorners((int) (16 * getResources().getDisplayMetrics().density))); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java index 2f39070ac..b45f44108 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java @@ -21,7 +21,6 @@ import de.danoeh.antennapod.event.playback.PlaybackPositionEvent; import de.danoeh.antennapod.event.playback.PlaybackServiceEvent; import de.danoeh.antennapod.model.playback.MediaType; import de.danoeh.antennapod.core.feed.util.ImageResourceUtils; -import de.danoeh.antennapod.core.glide.ApGlideSettings; import de.danoeh.antennapod.core.service.playback.PlaybackService; import de.danoeh.antennapod.model.playback.Playable; import de.danoeh.antennapod.core.util.playback.PlaybackController; @@ -201,7 +200,6 @@ public class ExternalPlayerFragment extends Fragment { RequestOptions options = new RequestOptions() .placeholder(R.color.light_gray) .error(R.color.light_gray) - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .fitCenter() .dontAnimate(); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/FeedInfoFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/FeedInfoFragment.java index 29074567c..36a2994e6 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/FeedInfoFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/FeedInfoFragment.java @@ -36,8 +36,6 @@ import com.google.android.material.snackbar.Snackbar; import com.joanzapata.iconify.Iconify; import de.danoeh.antennapod.R; import de.danoeh.antennapod.activity.MainActivity; -import de.danoeh.antennapod.core.glide.ApGlideSettings; -import de.danoeh.antennapod.core.glide.FastBlurTransformation; import de.danoeh.antennapod.core.storage.DBReader; import de.danoeh.antennapod.core.storage.DBTasks; import de.danoeh.antennapod.core.util.IntentUtils; @@ -45,6 +43,7 @@ import de.danoeh.antennapod.core.util.syndication.HtmlToPlainText; import de.danoeh.antennapod.menuhandler.FeedMenuHandler; import de.danoeh.antennapod.model.feed.Feed; import de.danoeh.antennapod.model.feed.FeedFunding; +import de.danoeh.antennapod.ui.glide.FastBlurTransformation; import de.danoeh.antennapod.ui.statistics.StatisticsFragment; import de.danoeh.antennapod.ui.statistics.feed.FeedStatisticsFragment; import de.danoeh.antennapod.view.ToolbarIconTintManager; @@ -203,7 +202,6 @@ public class FeedInfoFragment extends Fragment implements MaterialToolbar.OnMenu .apply(new RequestOptions() .placeholder(R.color.light_gray) .error(R.color.light_gray) - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .fitCenter() .dontAnimate()) .into(imgvCover); @@ -212,7 +210,6 @@ public class FeedInfoFragment extends Fragment implements MaterialToolbar.OnMenu .apply(new RequestOptions() .placeholder(R.color.image_readability_tint) .error(R.color.image_readability_tint) - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .transform(new FastBlurTransformation()) .dontAnimate()) .into(imgvBackground); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java index 8cd1b4909..318546c83 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java @@ -32,8 +32,6 @@ import de.danoeh.antennapod.adapter.EpisodeItemListAdapter; import de.danoeh.antennapod.core.event.DownloadEvent; import de.danoeh.antennapod.core.event.DownloaderUpdate; import de.danoeh.antennapod.core.feed.FeedEvent; -import de.danoeh.antennapod.core.glide.ApGlideSettings; -import de.danoeh.antennapod.core.glide.FastBlurTransformation; import de.danoeh.antennapod.core.menuhandler.MenuItemUtils; import de.danoeh.antennapod.core.service.download.DownloadService; import de.danoeh.antennapod.core.storage.DBReader; @@ -62,6 +60,7 @@ import de.danoeh.antennapod.model.download.DownloadStatus; import de.danoeh.antennapod.model.feed.Feed; import de.danoeh.antennapod.model.feed.FeedItem; import de.danoeh.antennapod.model.feed.FeedItemFilter; +import de.danoeh.antennapod.ui.glide.FastBlurTransformation; import de.danoeh.antennapod.view.ToolbarIconTintManager; import de.danoeh.antennapod.view.viewholder.EpisodeItemViewHolder; import io.reactivex.Maybe; @@ -505,7 +504,6 @@ public class FeedItemlistFragment extends Fragment implements AdapterView.OnItem .apply(new RequestOptions() .placeholder(R.color.image_readability_tint) .error(R.color.image_readability_tint) - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .transform(new FastBlurTransformation()) .dontAnimate()) .into(viewBinding.imgvBackground); @@ -515,7 +513,6 @@ public class FeedItemlistFragment extends Fragment implements AdapterView.OnItem .apply(new RequestOptions() .placeholder(R.color.light_gray) .error(R.color.light_gray) - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .fitCenter() .dontAnimate()) .into(viewBinding.header.imgvCover); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java index c80545bb2..17f8abf82 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java @@ -47,7 +47,6 @@ import de.danoeh.antennapod.event.UnreadItemsUpdateEvent; import de.danoeh.antennapod.model.feed.FeedItem; import de.danoeh.antennapod.model.feed.FeedMedia; import de.danoeh.antennapod.core.feed.util.ImageResourceUtils; -import de.danoeh.antennapod.core.glide.ApGlideSettings; import de.danoeh.antennapod.core.preferences.UsageStatistics; import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.core.service.download.Downloader; @@ -294,7 +293,6 @@ public class ItemFragment extends Fragment { RequestOptions options = new RequestOptions() .error(R.color.light_gray) - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) .transform(new FitCenter(), new RoundedCorners((int) (8 * getResources().getDisplayMetrics().density))) .dontAnimate(); diff --git a/core/build.gradle b/core/build.gradle index f2cf31158..887f19b5c 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -42,7 +42,6 @@ dependencies { implementation 'androidx.documentfile:documentfile:1.0.1' implementation "androidx.fragment:fragment:$fragmentVersion" implementation "androidx.media:media:$mediaVersion" - implementation "androidx.palette:palette:$paletteVersion" implementation "androidx.preference:preference:$preferenceVersion" implementation "androidx.work:work-runtime:$workManagerVersion" implementation "com.google.android.material:material:$googleMaterialVersion" @@ -51,7 +50,6 @@ dependencies { implementation "commons-io:commons-io:$commonsioVersion" implementation "org.jsoup:jsoup:$jsoupVersion" implementation "com.github.bumptech.glide:glide:$glideVersion" - annotationProcessor "com.github.bumptech.glide:compiler:$glideVersion" implementation "com.github.bumptech.glide:okhttp3-integration:$glideVersion@aar" implementation "com.squareup.okhttp3:okhttp:$okhttpVersion" implementation "com.squareup.okhttp3:okhttp-urlconnection:$okhttpVersion" diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/ApGlideSettings.java b/core/src/main/java/de/danoeh/antennapod/core/glide/ApGlideSettings.java deleted file mode 100644 index d0061af99..000000000 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/ApGlideSettings.java +++ /dev/null @@ -1,12 +0,0 @@ -package de.danoeh.antennapod.core.glide; - -import com.bumptech.glide.load.engine.DiskCacheStrategy; - -/** - * The settings that AntennaPod will use for various Glide options - */ -public class ApGlideSettings { - private ApGlideSettings(){} - - public static final DiskCacheStrategy AP_DISK_CACHE_STRATEGY = DiskCacheStrategy.ALL; -} diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/download/NewEpisodesNotification.java b/core/src/main/java/de/danoeh/antennapod/core/service/download/NewEpisodesNotification.java index b6a1851fa..c0cf9e077 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/download/NewEpisodesNotification.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/download/NewEpisodesNotification.java @@ -19,7 +19,6 @@ import de.danoeh.antennapod.core.R; import de.danoeh.antennapod.model.feed.Feed; import de.danoeh.antennapod.model.feed.FeedCounter; import de.danoeh.antennapod.model.feed.FeedPreferences; -import de.danoeh.antennapod.core.glide.ApGlideSettings; import de.danoeh.antennapod.core.util.gui.NotificationUtils; import de.danoeh.antennapod.storage.database.PodDBAdapter; @@ -119,9 +118,7 @@ public class NewEpisodesNotification { return Glide.with(context) .asBitmap() .load(feed.getImageUrl()) - .apply(new RequestOptions() - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) - .centerCrop()) + .apply(new RequestOptions().centerCrop()) .submit(iconSize, iconSize) .get(); } catch (Throwable tr) { diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceNotificationBuilder.java b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceNotificationBuilder.java index 47b587d77..3d5b4224c 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceNotificationBuilder.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceNotificationBuilder.java @@ -20,7 +20,6 @@ import androidx.core.content.ContextCompat; import com.bumptech.glide.Glide; import com.bumptech.glide.request.RequestOptions; import de.danoeh.antennapod.core.R; -import de.danoeh.antennapod.core.glide.ApGlideSettings; import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.core.receiver.MediaButtonReceiver; import de.danoeh.antennapod.core.util.Converter; @@ -72,9 +71,7 @@ public class PlaybackServiceNotificationBuilder { public void loadIcon() { int iconSize = (int) (128 * context.getResources().getDisplayMetrics().density); - final RequestOptions options = new RequestOptions() - .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY) - .centerCrop(); + final RequestOptions options = new RequestOptions().centerCrop(); try { icon = Glide.with(context) .asBitmap() diff --git a/core/src/main/java/de/danoeh/antennapod/core/widget/WidgetUpdater.java b/core/src/main/java/de/danoeh/antennapod/core/widget/WidgetUpdater.java index 1d1017bdc..b71e4ae80 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/widget/WidgetUpdater.java +++ b/core/src/main/java/de/danoeh/antennapod/core/widget/WidgetUpdater.java @@ -13,14 +13,12 @@ import android.view.View; import android.widget.RemoteViews; import com.bumptech.glide.Glide; -import com.bumptech.glide.request.RequestOptions; import java.util.concurrent.TimeUnit; import de.danoeh.antennapod.core.R; import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.model.playback.MediaType; -import de.danoeh.antennapod.core.glide.ApGlideSettings; import de.danoeh.antennapod.core.receiver.MediaButtonReceiver; import de.danoeh.antennapod.core.receiver.PlayerWidget; import de.danoeh.antennapod.core.util.Converter; @@ -89,7 +87,6 @@ public abstract class WidgetUpdater { icon = Glide.with(context) .asBitmap() .load(widgetState.media.getImageLocation()) - .apply(RequestOptions.diskCacheStrategyOf(ApGlideSettings.AP_DISK_CACHE_STRATEGY)) .submit(iconSize, iconSize) .get(500, TimeUnit.MILLISECONDS); views.setImageViewBitmap(R.id.imgvCover, icon); @@ -98,7 +95,6 @@ public abstract class WidgetUpdater { icon = Glide.with(context) .asBitmap() .load(ImageResourceUtils.getFallbackImageLocation(widgetState.media)) - .apply(RequestOptions.diskCacheStrategyOf(ApGlideSettings.AP_DISK_CACHE_STRATEGY)) .submit(iconSize, iconSize) .get(500, TimeUnit.MILLISECONDS); views.setImageViewBitmap(R.id.imgvCover, icon); diff --git a/settings.gradle b/settings.gradle index 0cf0366fe..96e06aabf 100644 --- a/settings.gradle +++ b/settings.gradle @@ -18,6 +18,7 @@ include ':storage:database' include ':ui:app-start-intent' include ':ui:common' +include ':ui:glide' include ':ui:i18n' include ':ui:png-icons' include ':ui:statistics' diff --git a/ui/glide/README.md b/ui/glide/README.md new file mode 100644 index 000000000..c246f2bea --- /dev/null +++ b/ui/glide/README.md @@ -0,0 +1,3 @@ +# :ui:glide + +Configuration and ModelLoaders for the Glide image loading library. diff --git a/ui/glide/build.gradle b/ui/glide/build.gradle new file mode 100644 index 000000000..ff61fc8e1 --- /dev/null +++ b/ui/glide/build.gradle @@ -0,0 +1,27 @@ +plugins { + id("com.android.library") +} +apply from: "../../common.gradle" +apply from: "../../playFlavor.gradle" + +android { + lintOptions { + disable "InvalidPeriodicWorkRequestInterval", "ObsoleteLintCustomCheck", "DefaultLocale", "UnusedAttribute", + "ParcelClassLoader", "CheckResult", "TrustAllX509TrustManager", + "StaticFieldLeak", "IconDensities", "IconDuplicates", "MissingPermission", "AppCompatResource", + "GradleCompatible", "QueryPermissionsNeeded" + } +} + +dependencies { + implementation project(":model") + implementation project(":core") + + implementation "androidx.palette:palette:$paletteVersion" + + implementation "com.github.bumptech.glide:glide:$glideVersion" + implementation "com.github.bumptech.glide:okhttp3-integration:$glideVersion@aar" + annotationProcessor "com.github.bumptech.glide:compiler:$glideVersion" + implementation "com.squareup.okhttp3:okhttp:$okhttpVersion" + implementation "commons-io:commons-io:$commonsioVersion" +} diff --git a/ui/glide/src/main/AndroidManifest.xml b/ui/glide/src/main/AndroidManifest.xml new file mode 100644 index 000000000..ddc027b29 --- /dev/null +++ b/ui/glide/src/main/AndroidManifest.xml @@ -0,0 +1 @@ + diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/ApGlideModule.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ApGlideModule.java similarity index 89% rename from core/src/main/java/de/danoeh/antennapod/core/glide/ApGlideModule.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ApGlideModule.java index 3dfbb6f03..d233fba14 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/ApGlideModule.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ApGlideModule.java @@ -1,4 +1,4 @@ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.annotation.SuppressLint; import android.content.Context; @@ -11,6 +11,7 @@ import com.bumptech.glide.GlideBuilder; import com.bumptech.glide.Registry; import com.bumptech.glide.annotation.GlideModule; import com.bumptech.glide.load.DecodeFormat; +import com.bumptech.glide.load.engine.DiskCacheStrategy; import com.bumptech.glide.load.engine.cache.InternalCacheDiskCacheFactory; import com.bumptech.glide.module.AppGlideModule; @@ -31,7 +32,9 @@ public class ApGlideModule extends AppGlideModule { @Override public void applyOptions(@NonNull Context context, @NonNull GlideBuilder builder) { - builder.setDefaultRequestOptions(RequestOptions.formatOf(DecodeFormat.PREFER_ARGB_8888)); + builder.setDefaultRequestOptions(new RequestOptions() + .format(DecodeFormat.PREFER_ARGB_8888) + .diskCacheStrategy(DiskCacheStrategy.ALL)); builder.setLogLevel(Log.WARN); @SuppressLint("UsableSpace") long spaceAvailable = context.getCacheDir().getUsableSpace(); diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/ApOkHttpUrlLoader.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ApOkHttpUrlLoader.java similarity index 98% rename from core/src/main/java/de/danoeh/antennapod/core/glide/ApOkHttpUrlLoader.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ApOkHttpUrlLoader.java index bab50a7b4..5c3605594 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/ApOkHttpUrlLoader.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ApOkHttpUrlLoader.java @@ -1,4 +1,4 @@ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.content.ContentResolver; import android.text.TextUtils; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/AudioCoverFetcher.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/AudioCoverFetcher.java similarity index 97% rename from core/src/main/java/de/danoeh/antennapod/core/glide/AudioCoverFetcher.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/AudioCoverFetcher.java index 2fffad108..d8e265ab5 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/AudioCoverFetcher.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/AudioCoverFetcher.java @@ -1,4 +1,4 @@ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.content.ContentResolver; import android.content.Context; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/ChapterImageModelLoader.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ChapterImageModelLoader.java similarity index 99% rename from core/src/main/java/de/danoeh/antennapod/core/glide/ChapterImageModelLoader.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ChapterImageModelLoader.java index 63126405d..9f82e0b31 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/ChapterImageModelLoader.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ChapterImageModelLoader.java @@ -1,4 +1,4 @@ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import androidx.annotation.NonNull; import com.bumptech.glide.Priority; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/FastBlurTransformation.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/FastBlurTransformation.java similarity index 99% rename from core/src/main/java/de/danoeh/antennapod/core/glide/FastBlurTransformation.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/FastBlurTransformation.java index 29edfb478..a19611100 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/FastBlurTransformation.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/FastBlurTransformation.java @@ -1,4 +1,4 @@ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.graphics.Bitmap; import android.media.ThumbnailUtils; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/GenerativePlaceholderImageModelLoader.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/GenerativePlaceholderImageModelLoader.java similarity index 99% rename from core/src/main/java/de/danoeh/antennapod/core/glide/GenerativePlaceholderImageModelLoader.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/GenerativePlaceholderImageModelLoader.java index a2263bc28..3ad8fba6a 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/GenerativePlaceholderImageModelLoader.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/GenerativePlaceholderImageModelLoader.java @@ -1,4 +1,4 @@ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.graphics.Bitmap; import android.graphics.Canvas; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/MetadataRetrieverLoader.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/MetadataRetrieverLoader.java similarity index 97% rename from core/src/main/java/de/danoeh/antennapod/core/glide/MetadataRetrieverLoader.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/MetadataRetrieverLoader.java index 1be43052b..a5046b7d0 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/MetadataRetrieverLoader.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/MetadataRetrieverLoader.java @@ -1,4 +1,4 @@ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.content.Context; import androidx.annotation.NonNull; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/NoHttpStringLoader.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/NoHttpStringLoader.java similarity index 97% rename from core/src/main/java/de/danoeh/antennapod/core/glide/NoHttpStringLoader.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/NoHttpStringLoader.java index fab470984..63af834b6 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/NoHttpStringLoader.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/NoHttpStringLoader.java @@ -1,4 +1,4 @@ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.net.Uri; import androidx.annotation.NonNull; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/PaletteBitmap.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/PaletteBitmap.java similarity index 91% rename from core/src/main/java/de/danoeh/antennapod/core/glide/PaletteBitmap.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/PaletteBitmap.java index 59ecd3d0d..a3b590ba2 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/PaletteBitmap.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/PaletteBitmap.java @@ -2,7 +2,7 @@ * Source: https://github.com/bumptech/glide/wiki/Custom-targets#palette-example */ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.graphics.Bitmap; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/PaletteBitmapResource.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/PaletteBitmapResource.java similarity index 95% rename from core/src/main/java/de/danoeh/antennapod/core/glide/PaletteBitmapResource.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/PaletteBitmapResource.java index fef0bccd3..2fd18a0cb 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/PaletteBitmapResource.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/PaletteBitmapResource.java @@ -2,7 +2,7 @@ * Source: https://github.com/bumptech/glide/wiki/Custom-targets#palette-example */ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import androidx.annotation.NonNull; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/PaletteBitmapTranscoder.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/PaletteBitmapTranscoder.java similarity index 96% rename from core/src/main/java/de/danoeh/antennapod/core/glide/PaletteBitmapTranscoder.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/PaletteBitmapTranscoder.java index a6a606cb8..75599a30a 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/PaletteBitmapTranscoder.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/PaletteBitmapTranscoder.java @@ -2,7 +2,7 @@ * Source: https://github.com/bumptech/glide/wiki/Custom-targets#palette-example */ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.graphics.Bitmap; diff --git a/core/src/main/java/de/danoeh/antennapod/core/glide/ResizingOkHttpStreamFetcher.java b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ResizingOkHttpStreamFetcher.java similarity index 96% rename from core/src/main/java/de/danoeh/antennapod/core/glide/ResizingOkHttpStreamFetcher.java rename to ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ResizingOkHttpStreamFetcher.java index 1871723bb..2d4e4d45f 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/glide/ResizingOkHttpStreamFetcher.java +++ b/ui/glide/src/main/java/de/danoeh/antennapod/ui/glide/ResizingOkHttpStreamFetcher.java @@ -1,4 +1,4 @@ -package de.danoeh.antennapod.core.glide; +package de.danoeh.antennapod.ui.glide; import android.graphics.Bitmap; import android.graphics.BitmapFactory; @@ -9,6 +9,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.bumptech.glide.Priority; import com.bumptech.glide.integration.okhttp3.OkHttpStreamFetcher; +import com.bumptech.glide.load.data.DataFetcher; import com.bumptech.glide.load.model.GlideUrl; import okhttp3.Call; import org.apache.commons.io.FileUtils; @@ -36,8 +37,8 @@ public class ResizingOkHttpStreamFetcher extends OkHttpStreamFetcher { } @Override - public void loadData(@NonNull Priority priority, @NonNull DataCallback callback) { - super.loadData(priority, new DataCallback() { + public void loadData(@NonNull Priority priority, @NonNull DataFetcher.DataCallback callback) { + super.loadData(priority, new DataFetcher.DataCallback() { @Override public void onDataReady(@Nullable InputStream data) { if (data == null) { diff --git a/ui/statistics/build.gradle b/ui/statistics/build.gradle index 905db0b5e..99c613b75 100644 --- a/ui/statistics/build.gradle +++ b/ui/statistics/build.gradle @@ -28,7 +28,6 @@ dependencies { implementation "org.greenrobot:eventbus:$eventbusVersion" implementation "com.github.bumptech.glide:glide:$glideVersion" - annotationProcessor "com.github.bumptech.glide:compiler:$glideVersion" implementation "io.reactivex.rxjava2:rxandroid:$rxAndroidVersion" implementation "io.reactivex.rxjava2:rxjava:$rxJavaVersion" implementation "com.joanzapata.iconify:android-iconify-fontawesome:$iconifyVersion" diff --git a/ui/statistics/src/main/java/de/danoeh/antennapod/ui/statistics/StatisticsListAdapter.java b/ui/statistics/src/main/java/de/danoeh/antennapod/ui/statistics/StatisticsListAdapter.java index d961659d7..cae58a38f 100644 --- a/ui/statistics/src/main/java/de/danoeh/antennapod/ui/statistics/StatisticsListAdapter.java +++ b/ui/statistics/src/main/java/de/danoeh/antennapod/ui/statistics/StatisticsListAdapter.java @@ -12,7 +12,6 @@ import android.widget.TextView; import com.bumptech.glide.Glide; import com.bumptech.glide.request.RequestOptions; -import de.danoeh.antennapod.core.glide.ApGlideSettings; import de.danoeh.antennapod.core.storage.StatisticsItem; import java.util.List; @@ -66,7 +65,6 @@ public abstract class StatisticsListAdapter extends RecyclerView.Adapter