Commit Graph

898 Commits

Author SHA1 Message Date
Bart De Vries 1fb0e0fc45 Fix bug in addFeeds
addFeeds would stop if it encountered a url that we already had in the
database instead of continuing with the next one.  This bug was
introduced due to refactoring for sync.
2021-11-19 10:32:00 +01:00
Bart De Vries 23001c552a [sync] Check for existence of percent decoded AND encoded version of enclosure url to sync 2021-11-19 10:30:45 +01:00
Bart De Vries 9c2d7adf55 Add support for images from MRSS thumbnail tag 2021-11-15 14:10:46 +01:00
Bart De Vries 19d7a2c12b Bump KF5_MIN_VERSION to 5.87.0
This is required for NavigationTabBar

BUG 445423
2021-11-13 18:11:53 +01:00
Bart De Vries eb13598dd4 Small fix of minimized player getting covered by 1 pixel 2021-11-05 11:51:26 +01:00
Bart De Vries 8c8a3a91d6 Fix Overlays not being visible when virtual keyboard pops up simultaneously 2021-11-05 10:25:44 +01:00
Bart De Vries ff556fd632 Fix pedantic compiler warning 2021-11-05 09:03:07 +01:00
Devin Lin aa01c04869 Fix flicking not working in mobile footer 2021-11-04 21:18:21 -04:00
Tobias Fella 02d78b2f32 Don't try to use clang-format on android at all 2021-11-04 19:51:06 +01:00
Bart De Vries 214394aae7 Fix kasts icon on android
Also fix a minor compiler warning (mentioned during android build)

BUG: 444892
2021-11-04 15:38:09 +01:00
Bart De Vries e6e0563498 Fix android craft packaging 2021-11-04 10:41:11 +01:00
Bart De Vries a27fed1dc5 Fix android build (SolidExtras rename to KastsSolidExtras) 2021-11-03 23:38:28 +01:00
Tobias Fella 53249607db Also rename solidextras library 2021-11-03 20:56:26 +01:00
Bart De Vries 6d3951dcd6 Fix very weird msvc compiler issue 2021-11-03 19:51:38 +01:00
Bart De Vries d0acc10c2b Fix kasts crashing on Android 2021-11-03 16:52:35 +01:00
Bart De Vries 76b242d150 Fix setting play position when syncing 2021-11-03 09:39:06 +01:00
Yuri Chornoivan 8f5b3c0aa6 Add i18n() 2021-10-30 22:49:32 +03:00
Bart De Vries 5882781a9f Reverse subscriptions and episodes in main menu
This is probably a more useful order.  It's also consistent with the new
mobile bottom toolbar.
2021-10-30 19:46:30 +02:00
Bart De Vries ad5213176e Fix bottom margin for notifications now that floating buttons are gone 2021-10-30 19:45:53 +02:00
Devin Lin e16c40d57c Add mobile bottom navbar, use Titles toolbar on mobile, and add blurred image background to mobile player 2021-10-30 17:10:19 +00:00
Bart De Vries f861f4e802 Add podcast subscription and episode play state synchronization
This implements the gpodder API from scratch.  It turned out that
libmygpo-qt has several critical bugs, and there's no response to pull
requests upstream.  So using that library was not an option.

The implementation into kasts consists of the following:
- Can sync with gpodder.net or with a nextcloud server that has the
  nextcloud-gpodder app installed.  (This app is mostly API compatible
  with gpodder.)
- Passwords are stored using qtkeychain.  If the keychain is
  unavailable it will fallback to file.
- It syncs podcast subscriptions and episode play positions, including
  marking episodes as played. Episodes that have a non-zero play
  position will be added to the queue automatically.
- It will check for a metered connection before syncing.  This is
  coupled to the allowMeteredFeedUpdates setting.
- Full synchronization can be performed either manually (from the
  settings page) or through automatic triggers: on startup and/or on
  feed refresh.
- There is an additional possibility to trigger quick upload-only syncs
  to make sure that the local changes are immediately uploaded to the
  server (if the connection allows).  This will trigger when
  subscriptions are added or removed, when the pause/play button is
  toggled or an episode is marked as played.
- This implements a few safeguards to avoid having multiple feed URLS
  pointing to the same underlying feed (e.g. http vs https).  This
  solves part of #17

Solves #13
2021-10-29 18:47:55 +02:00
Tobias Fella 6ad1818734 Create better Settings
Use the settings components from Kirigami
2021-10-29 17:04:07 +02:00
Bart De Vries 0d37ee9f82 Make Chapter Marks accessible on desktop 2021-10-29 14:45:01 +00:00
Bart De Vries d4b5103c2b Add copy buttons for feed and episode download URLs
BUG: 443282
2021-10-29 14:42:45 +00:00
Bart De Vries c28739efeb Fix bug when downloading enclosure on "unknown" metered connection
Trying to download an enclosure on a connection with unknown metered
status would trigger the overlay sheet with actions.
2021-10-28 23:38:15 +02:00
Bart De Vries 5b15f4c7b9 Solve issue with FolderDialog
FolderDialog has issues retrieving the selected folder if that folder
has been selected through xdg-desktop-portal (i.e. flatpaks).  Reverting
to FileDialog from QtQuick.Dialogs.

BUG: 443956
2021-10-28 13:12:04 +02:00
Bart De Vries 2455e543fe Fix fetch-on-startup logic
The fetch-on-startup would only happen if the metered state was
explicitly set to "No".  Hence, when the state is "Unknown" (which will
happen in most cases) no fetching would be done on startup.

The new logic will check for the metered state not being equal to "Yes".
2021-10-27 10:20:44 +02:00
Bart De Vries 3ff1333195 Fix uninitialized member variable m_sizeOnDisk 2021-10-26 23:14:44 +02:00
Bart De Vries 4f83ac8701 Solve memory leak when fetching feeds 2021-10-26 22:32:58 +02:00
Bart De Vries 710f44d2ef Fix parsing chapter marks containing a decimal point 2021-10-25 11:50:40 +02:00
Tobias Fella 3d5a00d2d7 Rename solidextras plugin to prevent name clashes when also using
itinerary
2021-10-24 16:11:47 +02:00
Nicolas Fella dd5b79faea Fix taglib includes
FindTaglib reports <prefix>/include/taglib/ as include path, so we must
not prefix the headers with taglib/
2021-10-15 00:36:03 +02:00
Bart De Vries ca595c985c Make parsing of chapter timestamps more robust
Solves #19
2021-10-13 20:42:24 +02:00
Tobias Fella 6d164e019b Remove debug print 2021-10-13 20:10:24 +02:00
Bart De Vries 9f9bcb639e Remove leftover canCheckNetworkStatus calls 2021-10-11 12:26:17 +02:00
Tobias Fella fc6969e018 Implement network status checking on android
Replaces the whole thing with the solidextras implementation found in
itinerary
2021-10-09 19:32:28 +00:00
Bart De Vries 52f90157ca Make sure chapter marks show up in the correct order 2021-10-07 13:28:47 +02:00
Bart De Vries b77c3b46af Don't make text selectable on mobile since it messes up scrolling 2021-10-07 12:07:14 +02:00
Bart De Vries 0afdb0d50c Add ZLIB optional dependency for Android CI 2021-10-07 11:42:56 +02:00
Tobias Fella f6a8f40d9a Try fixing CI 2021-10-07 11:42:56 +02:00
Nicolás Alvarez 880f1d3dc3 Add GitLab CI for Android 2021-10-07 11:42:55 +02:00
Nicolas Fella e8af438871 Add FreeBSD CI 2021-10-07 01:36:51 +02:00
Bart De Vries de954f644a Fix issues with cached images being accessed while the download is still running 2021-10-06 19:16:06 +00:00
Tobias Fella 044dbf5f23 Implement loading chapters from mpeg files 2021-10-06 21:08:12 +02:00
Nicolas Fella 4c73f1c71c Remove broken windows header
It's not needed and breaks the build
2021-10-04 22:41:49 +02:00
Tobias Fella 67d10d32bf Link against sqlite on android
Tricks androiddeployqt into including the libraries
2021-10-04 19:12:31 +00:00
Bart De Vries 748c9e3116 Fix compiler warnings 2021-10-03 20:49:42 +02:00
Tobias Fella e60880603b Add compile_commands.json to .gitignore 2021-10-03 19:08:09 +02:00
Bart De Vries fdbe348f12 Make Entry and Feed details text selectable 2021-10-02 20:39:15 +02:00
Bart De Vries 157e1219bb Fix 'Allow Once' feed update after it was broken by refactoring 2021-10-02 20:32:36 +02:00