summaryrefslogtreecommitdiff
path: root/app/src/main/java
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2023-05-05 19:42:51 +0200
committerByteHamster <info@bytehamster.com>2023-05-05 19:43:45 +0200
commitf8be7d596d098e534039908ade8270e13168fd23 (patch)
treeaa168885671cf49293c8a5eec088f0fedfaaa54b /app/src/main/java
parent967e289f91f51d0b5a91fdd598c3f42bd995299a (diff)
parentb063f0508f6e6439509f22769374c57f77cb499f (diff)
downloadAntennaPod-f8be7d596d098e534039908ade8270e13168fd23.zip
Merge branch 'master' into develop
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java6
-rw-r--r--app/src/main/java/de/danoeh/antennapod/adapter/EpisodeItemListAdapter.java8
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/EpisodesListFragment.java5
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java5
-rw-r--r--app/src/main/java/de/danoeh/antennapod/preferences/PreferenceUpgrader.java5
-rw-r--r--app/src/main/java/de/danoeh/antennapod/ui/home/sections/SubscriptionsSection.java8
6 files changed, 29 insertions, 8 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java
index 7851e5b9a..bd467076a 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java
@@ -516,7 +516,11 @@ public class MainActivity extends CastEnabledActivity {
String toPage = UserPreferences.getDefaultPage();
if (NavDrawerFragment.getLastNavFragment(this).equals(toPage)
|| UserPreferences.DEFAULT_PAGE_REMEMBER.equals(toPage)) {
- super.onBackPressed();
+ if (UserPreferences.backButtonOpensDrawer() && drawerLayout != null) {
+ drawerLayout.openDrawer(navDrawer);
+ } else {
+ super.onBackPressed();
+ }
} else {
loadFragment(toPage, null);
}
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/EpisodeItemListAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/EpisodeItemListAdapter.java
index cc32261da..0ec7018a7 100644
--- a/app/src/main/java/de/danoeh/antennapod/adapter/EpisodeItemListAdapter.java
+++ b/app/src/main/java/de/danoeh/antennapod/adapter/EpisodeItemListAdapter.java
@@ -1,7 +1,6 @@
package de.danoeh.antennapod.adapter;
import android.app.Activity;
-import android.content.Context;
import android.os.Build;
import android.view.ContextMenu;
import android.view.InputDevice;
@@ -15,7 +14,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
-import com.google.android.material.elevation.SurfaceColors;
+import de.danoeh.antennapod.ui.common.ThemeUtils;
import org.apache.commons.lang3.ArrayUtils;
import java.lang.ref.WeakReference;
@@ -120,9 +119,8 @@ public class EpisodeItemListAdapter extends SelectableAdapter<EpisodeItemViewHol
if (inActionMode()) {
holder.secondaryActionButton.setOnClickListener(null);
if (isSelected(pos)) {
- Context context = mainActivityRef.get();
- float density = context.getResources().getDisplayMetrics().density;
- holder.itemView.setBackgroundColor(SurfaceColors.getColorForElevation(context, 8 * density));
+ holder.itemView.setBackgroundColor(0x88000000
+ + (0xffffff & ThemeUtils.getColorFromAttr(mainActivityRef.get(), R.attr.colorAccent)));
} else {
holder.itemView.setBackgroundResource(android.R.color.transparent);
}
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/EpisodesListFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/EpisodesListFragment.java
index 18bec12ca..ef784e9ee 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/EpisodesListFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/EpisodesListFragment.java
@@ -425,13 +425,16 @@ public abstract class EpisodesListFragment extends Fragment
.observeOn(AndroidSchedulers.mainThread())
.subscribe(
data -> {
+ final boolean restoreScrollPosition = episodes.isEmpty();
episodes = data.first;
hasMoreItems = !(page == 1 && episodes.size() < EPISODES_PER_PAGE);
progressBar.setVisibility(View.GONE);
listAdapter.setDummyViews(0);
listAdapter.updateItems(episodes);
listAdapter.setTotalNumberOfItems(data.second);
- recyclerView.restoreScrollPosition(getPrefName());
+ if (restoreScrollPosition) {
+ recyclerView.restoreScrollPosition(getPrefName());
+ }
updateToolbar();
}, error -> {
listAdapter.setDummyViews(0);
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java
index a773796e5..fe97cb265 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java
@@ -2,6 +2,7 @@ package de.danoeh.antennapod.fragment.preferences;
import android.app.Activity;
import android.content.res.Resources;
+import android.os.Build;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.collection.ArrayMap;
@@ -60,6 +61,10 @@ public class PlaybackPreferencesFragment extends PreferenceFragmentCompat {
UsageStatistics.doNotAskAgain(UsageStatistics.ACTION_STREAM);
return true;
});
+ if (Build.VERSION.SDK_INT >= 31) {
+ findPreference(UserPreferences.PREF_UNPAUSE_ON_HEADSET_RECONNECT).setVisible(false);
+ findPreference(UserPreferences.PREF_UNPAUSE_ON_BLUETOOTH_RECONNECT).setVisible(false);
+ }
buildEnqueueLocationPreference();
}
diff --git a/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceUpgrader.java b/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceUpgrader.java
index 80e7fdb1e..0a1b56e25 100644
--- a/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceUpgrader.java
+++ b/app/src/main/java/de/danoeh/antennapod/preferences/PreferenceUpgrader.java
@@ -130,6 +130,11 @@ public class PreferenceUpgrader {
"" + UserPreferences.EPISODE_CACHE_SIZE_UNLIMITED).apply();
}
}
+ if (oldVersion < 3000007) {
+ if (prefs.getString("prefBackButtonBehavior", "").equals("drawer")) {
+ prefs.edit().putBoolean(UserPreferences.PREF_BACK_OPENS_DRAWER, true).apply();
+ }
+ }
if (oldVersion < 3010000) {
if (prefs.getString(UserPreferences.PREF_THEME, "system").equals("2")) {
prefs.edit()
diff --git a/app/src/main/java/de/danoeh/antennapod/ui/home/sections/SubscriptionsSection.java b/app/src/main/java/de/danoeh/antennapod/ui/home/sections/SubscriptionsSection.java
index 9dbd34b4a..bafc01bf6 100644
--- a/app/src/main/java/de/danoeh/antennapod/ui/home/sections/SubscriptionsSection.java
+++ b/app/src/main/java/de/danoeh/antennapod/ui/home/sections/SubscriptionsSection.java
@@ -1,5 +1,7 @@
package de.danoeh.antennapod.ui.home.sections;
+import android.content.Context;
+import android.content.SharedPreferences;
import android.os.Bundle;
import android.util.Log;
import android.view.ContextMenu;
@@ -19,6 +21,7 @@ import de.danoeh.antennapod.event.FeedListUpdateEvent;
import de.danoeh.antennapod.fragment.SubscriptionFragment;
import de.danoeh.antennapod.model.feed.Feed;
import de.danoeh.antennapod.ui.home.HomeSection;
+import de.danoeh.antennapod.ui.statistics.StatisticsFragment;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.Disposable;
@@ -88,7 +91,10 @@ public class SubscriptionsSection extends HomeSection {
if (disposable != null) {
disposable.dispose();
}
- disposable = Observable.fromCallable(() -> DBReader.getStatistics(true, 0, Long.MAX_VALUE).feedTime)
+ SharedPreferences prefs = getContext().getSharedPreferences(StatisticsFragment.PREF_NAME, Context.MODE_PRIVATE);
+ boolean includeMarkedAsPlayed = prefs.getBoolean(StatisticsFragment.PREF_INCLUDE_MARKED_PLAYED, false);
+ disposable = Observable.fromCallable(() ->
+ DBReader.getStatistics(includeMarkedAsPlayed, 0, Long.MAX_VALUE).feedTime)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(statisticsData -> {