summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/danoeh/antennapod/fragment
diff options
context:
space:
mode:
authorTom Hennen <TomHennen@users.noreply.github.com>2016-01-26 17:46:37 -0500
committerTom Hennen <TomHennen@users.noreply.github.com>2016-01-26 17:46:37 -0500
commitb53fe7874b4b90806bd6f358fcfdcafa203c7ecc (patch)
tree481f8a0f40214fa5224f0392e85be7f94eea5af6 /app/src/main/java/de/danoeh/antennapod/fragment
parentf71f1a5452c5d9e286687444fc3865d03eb3ad00 (diff)
parent495df46ba40e8e031daf7ba1002a7245388f085d (diff)
downloadAntennaPod-b53fe7874b4b90806bd6f358fcfdcafa203c7ecc.zip
Merge pull request #1615 from mfietz/issue/1606-player-skip-update
Fix player skip issues
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/fragment')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java11
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/CoverFragment.java30
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/ItemDescriptionFragment.java10
3 files changed, 35 insertions, 16 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java
index abc9f3d22..ce1d753e8 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java
@@ -55,8 +55,17 @@ public class ChaptersFragment extends ListFragment implements AudioplayerContent
}
}
+ public void onDestroy() {
+ super.onDestroy();
+ adapter = null;
+ }
+
@Override
- public void onDataSetChanged(Playable media) {
+ public void onMediaChanged(Playable media) {
+ if(this.media == media || adapter == null) {
+ return;
+ }
+ this.media = media;
adapter.setMedia(media);
adapter.notifyDataSetChanged();
if(media.getChapters() == null) {
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 a3e9723ea..931d14924 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/CoverFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/CoverFragment.java
@@ -19,8 +19,8 @@ import de.danoeh.antennapod.core.util.playback.Playable;
/**
* Displays the cover and the title of a FeedItem.
*/
-public class CoverFragment extends Fragment implements
- AudioplayerContentFragment {
+public class CoverFragment extends Fragment implements AudioplayerContentFragment {
+
private static final String TAG = "CoverFragment";
private static final String ARG_PLAYABLE = "arg.playable";
@@ -71,14 +71,12 @@ public class CoverFragment extends Fragment implements
Log.d(TAG, "episode title: " + media.getEpisodeTitle());
txtvPodcastTitle.setText(media.getFeedTitle());
txtvEpisodeTitle.setText(media.getEpisodeTitle());
- imgvCover.post(() -> {
- Glide.with(this)
- .load(media.getImageUri())
- .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY)
- .dontAnimate()
- .fitCenter()
- .into(imgvCover);
- });
+ Glide.with(this)
+ .load(media.getImageUri())
+ .diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY)
+ .dontAnimate()
+ .fitCenter()
+ .into(imgvCover);
} else {
Log.w(TAG, "loadMediaInfo was called while media was null");
}
@@ -97,7 +95,17 @@ public class CoverFragment extends Fragment implements
}
@Override
- public void onDataSetChanged(Playable media) {
+ public void onDestroy() {
+ super.onDestroy();
+ // prevent memory leaks
+ root = null;
+ }
+
+ @Override
+ public void onMediaChanged(Playable media) {
+ if(this.media == media) {
+ return;
+ }
this.media = media;
loadMediaInfo();
}
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ItemDescriptionFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ItemDescriptionFragment.java
index 9790e66b3..4c723e5ff 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/ItemDescriptionFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/ItemDescriptionFragment.java
@@ -21,7 +21,7 @@ import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
-import android.webkit.WebSettings.LayoutAlgorithm;
+import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;
@@ -67,7 +67,6 @@ public class ItemDescriptionFragment extends Fragment implements AudioplayerCont
private ShownotesProvider shownotesProvider;
private Playable media;
-
private Subscription webViewLoader;
/**
@@ -124,7 +123,7 @@ public class ItemDescriptionFragment extends Fragment implements AudioplayerCont
ta.recycle();
webvDescription.setBackgroundColor(backgroundColor);
webvDescription.getSettings().setUseWideViewPort(false);
- webvDescription.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);
+ webvDescription.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
webvDescription.getSettings().setLoadWithOverviewMode(true);
webvDescription.setOnLongClickListener(webViewLongClickListener);
webvDescription.setWebViewClient(new WebViewClient() {
@@ -384,7 +383,10 @@ public class ItemDescriptionFragment extends Fragment implements AudioplayerCont
}
@Override
- public void onDataSetChanged(Playable media) {
+ public void onMediaChanged(Playable media) {
+ if(this.media == media) {
+ return;
+ }
this.media = media;
this.shownotesProvider = media;
load();