49 Commits

Author SHA1 Message Date
88ee76cfcf Move favorites to a dedicated screen (#8339)
### Description

Favorites were only reachable via a hidden filter on the Episodes
screen. This adds FavoritesFragment as a proper navigation destination,
mirrors the pattern of PlaybackHistoryFragment, and removes the
now-redundant star quick-filter button from the Episodes toolbar.

Closes #8253

### Checklist
- [ ] I have read the contribution guidelines:
https://github.com/AntennaPod/AntennaPod/blob/develop/CONTRIBUTING.md#submit-a-pull-request
- [ ] I have performed a self-review of my code, going through my
changes line by line and carefully considering why this line change is
necessary
- [ ] I have run the automated code checks using `./gradlew checkstyle
spotbugsPlayDebug spotbugsDebug :app:lintPlayDebug`
- [ ] My code follows the style guidelines of the AntennaPod project:
https://antennapod.org/contribute/develop/app/code-style
- [ ] I have mentioned the corresponding issue and the relevant keyword
(e.g., "Closes: #xy") in the description (see
https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue)
- [ ] If it is a core feature, I have added automated tests

<!-- START COPILOT CODING AGENT TIPS -->
---

📱 Kick off Copilot coding agent tasks wherever you are with [GitHub
Mobile](https://gh.io/cca-mobile-docs), available on iOS and Android.

---------

Co-authored-by: ByteHamster <5811634+ByteHamster@users.noreply.github.com>
2026-03-15 16:07:44 +00:00
c51a0710a8 Move Statistics screen from Subscriptions menu to navigation drawer (#8313)
### Description

Make the Statistics screen a top-level navigation destination in the
drawer and bottom navigation, instead of being hidden behind the
Subscriptions overflow menu. This makes it easier to discover and
reflects that statistics aren't just about subscriptions.

Fixes #8310 

### Checklist
<!-- 
To help us keep the issue tracker clean and work as efficient as
possible,
  please make sure that you have done all of the following.
You can tick the boxes below by placing an x inside the brackets like
this: [x]
-->
- [x] I have read the contribution guidelines:
https://github.com/AntennaPod/AntennaPod/blob/develop/CONTRIBUTING.md#submit-a-pull-request
- [x] I have performed a self-review of my code, going through my
changes line by line and carefully considering why this line change is
necessary
- [x] I have run the automated code checks using `./gradlew checkstyle
spotbugsPlayDebug spotbugsDebug :app:lintPlayDebug`
- [x] My code follows the style guidelines of the AntennaPod project:
https://antennapod.org/contribute/develop/app/code-style
- [x] I have mentioned the corresponding issue and the relevant keyword
(e.g., "Closes: #xy") in the description (see
https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue)
- [x] If it is a core feature, I have added automated tests
2026-02-26 20:24:57 +01:00
3941bac55a Remember last sleep timer value per type (#8175) 2025-12-26 09:18:20 +01:00
8dfb0c2a8e Enable bottom navigation for users who never touched the setting (#8158)
* Enable bottom navigation for users who never opened the settings

* Make tests more independent of navigation setting
2025-12-14 16:26:21 +01:00
eb4cc10c45 Add default sort for episode list (#7972) 2025-12-05 22:19:27 +01:00
0debbc3973 Add episode count sleep timers (#7841) 2025-10-30 22:51:03 +01:00
198c151a22 Migrate update interval from hours to minutes (#8005)
This is a bit of a hack so that we have "1" available for "global" (instead of 1 hour) because we cannot change sql default values.
2025-09-22 22:45:16 +02:00
720aba1602 Move remaining subscription settings to subscription screen (#7981) 2025-09-12 21:27:23 +02:00
9e53b1ecec Run update worker hourly (#7943)
Only refresh the feeds that have not been refreshed since their last interval.
This solves the problem where force-stopping the app during a long feed refresh
would start the refresh all over instead of just taking the feeds that were not
refreshed already.
2025-08-23 20:52:11 +02:00
3ed5b0bfa4 Add option to automatically download queue (#7627)
We already added the queue to the auto-download candidates.
Now that auto-download was rewritten to not be a "master switch",
the code is called even if auto-download is turned off for all subscriptions.
This lead to queued episodes being downloaded for users who had auto-download disabled.

Convert the feature to an explicit setting to avoid behavior changes for users.
Also, this implements a setting to auto-download the queue,
which users have requested because they did not know that AntennaPod already does this.
Finally, it should solve user confusion where they automatically add episodes to the queue
but set the auto-download filter to ignore specific episodes.
2025-02-02 19:28:23 +01:00
e4ac872b74 Convert autodownloads from master switch to per-podcast setting (#7458) 2025-01-18 12:31:44 +01:00
476a9d2a7e Add option to have Play/Pause button in Downloads (#7569) 2025-01-17 21:33:26 +01:00
047a31b799 Change default drawer order to better fit bottom navigation (#7488) 2024-11-10 11:02:25 +01:00
b06caeadec Remove WiFi filter setting (#7406)
93% of our users have an Android version modern enough that the setting is not available there anyway.
From the remaining 7%, probably only a tiny percentage use that setting.
Removing simplifies our code and makes it easier to maintain.
2024-09-14 11:22:32 +02:00
6cbc58ba78 Bottom navigation (#7176) 2024-09-10 20:59:18 +02:00
f7faf3c8c3 Support reordering drawer items (#7310) 2024-08-08 22:26:07 +02:00
1fc212ee88 Move auto-delete settings (#7096)
Users had a hard time understanding that automatic deletion and episode cleanup are two different things.
Maybe that is because in German, both got translated to the exact same string.
Now both are next to each other and the titles are updated, so that it hopefully causes less confusion.
2024-05-24 14:21:21 +02:00
d9d48674ed Move 'show subscription title' setting to subscription page (#7097) 2024-04-27 10:42:54 +02:00
e578f4ca93 CI tweaks (#7069)
- Run Checkstyle with gradle to make it easier for users
  - No longer needs different configuration for new code
  - Exclude current violations
  - Fix some violations that somehow couldn't be specified in the exclusion file
- Print SpotBugs/Lint/Checkstly violations in GitHub format
  - Then the CI run gets annotated on the web UI
2024-04-07 23:28:14 +02:00
a846e417b0 Fix playback state not being updated (#7050) 2024-04-01 09:55:30 +02:00
f9dd837362 Remove ClientConfig class (#7038) 2024-03-29 13:39:19 +01:00
5ede21d676 Remove dependency of :net:discovery and :ui:echo on :core (#7036)
Moves the common icon files to :ui:common
2024-03-29 11:23:33 +01:00
69b24699a3 Move DBReader to :storage:database (#7027) 2024-03-25 21:45:43 +01:00
4078b3475e Simplify playback preferences and move to :storage:preferences (#7024) 2024-03-24 21:08:06 +01:00
bd17373c18 Playback speed fixes (#7013)
- Remove video-specific playback speed (no longer needed now that we have per-podcast speed)
- Respect changed speed setting on settings page even if the service is not running
- Do not change global speed when feed setting is updated
2024-03-22 19:44:14 +01:00
55845c46a1 Optional automatic daily database backup (#6994) 2024-03-18 07:36:37 +01:00
cae848b505 Fix indentation in last 8 files 2024-03-04 23:09:59 +01:00
9cfbae183c Toggle sleep timer from notification (#6913) 2024-02-25 15:02:44 +01:00
0f5600932d Add next chapter button to notification (#6276) 2024-02-04 19:54:46 +01:00
c7d6cd358c Honor sort in episode list view in Android Auto (#6756) 2023-11-17 22:33:16 +01:00
346365b8d0 Delete local feed episodes (#6400) 2023-10-22 16:53:41 +02:00
e9d190da1b Bump AGP and Gradle (#6489) 2023-10-17 20:52:21 +02:00
37c29a6372 Remove auto-download notification setting (#6625)
Also, add episode notifications to multi select options
2023-09-12 19:19:28 +02:00
6d7bfef8a5 Download Service Rewrite (#6420) 2023-05-05 23:09:03 +02:00
f8be7d596d Merge branch 'master' into develop 2023-05-05 19:43:45 +02:00
78f65349d5 Update AGP to 7.4.0 (#5655) 2023-04-01 23:16:53 +02:00
8c9b61e599 Remove 'set lockscreen background' setting (#6385)
Users disable the setting and then wonder why other apps (like Android
Auto) do not display the cover image, even though it says so in the
setting summary.
2023-03-31 22:18:37 +02:00
548f9e021e Random enqueue location (#6403) 2023-03-31 22:16:59 +02:00
4f7f49e1e7 Move feed download to worker (#6375)
Feed downloads are now independent from episode downloads.
This makes it easier to use WorkManager for refreshing.
Also, it will make it easier to add different refresh intervals
in the future.
2023-03-14 21:03:45 +01:00
6b6753ad84 Hide 'reconnect' settings (#6367)
Android 12+ doesn't let us start the foreground service from an event
like "headset reconnected". Hide the corresponding settings and avoid
crashing.
2023-03-06 22:08:49 +01:00
581e71b306 Add option to switch a- & descending sort order for Inbox (#6266) 2023-02-28 21:41:15 +01:00
5e75c968ad Re-add setting to open drawer when pressing back (#6355) 2023-02-28 20:42:46 +01:00
ccea00e405 Remove deprecated media players (#6354) 2023-02-26 16:38:31 +01:00
6d72d7cebf Add mobile sync setting (#6349) 2023-02-24 22:06:12 +01:00
9fed944392 Add "New Episodes Action" preference (#6095) 2023-02-22 21:34:43 +01:00
997860fe52 Extra toggle for full black theme (#6328) 2023-02-18 14:51:55 +01:00
7a2f4771ec Add sorting options to downloads screen (#6210) 2023-02-12 21:12:04 +01:00
1d251492b0 Add support for Material You tinted theme 2022-12-17 10:51:07 +01:00
d8a2dd5f83 Move preferences to a new module 2022-11-06 21:21:28 +01:00