Commit Graph

774 Commits

Author SHA1 Message Date
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
Bart De Vries
c061a01c59 Wrap feed update routine in KJob and make it more efficient
The feed update routine which is now spread over several methods
in Fetcher, is now put into a self-contained KJob.  This will allow
to re-use this job later on in e.g. gpodder sync, where it's
required to update feeds before syncing episode statuses.

This also makes the feed update abortable.

Lastly, but most importantly, the feed update procedure has been
optimized to minimize database transactions, resulting in a dramatic
speed-up.  This is especially true for importing new feeds, which
will now be at least 5x faster on slow hardware.
2021-10-01 22:36:42 +02:00
Bart De Vries
e4ee0f19fd Do not create feed object if it's not in the database
Also clear errors related to a feed that's being removed from the database.
2021-10-01 15:46:17 +02:00
Albert Astals Cid
c0dc8cee6a Add "dummy" contexts to two i18np
gettext complained that there's another string with the same text but
not plural and that is bad, so add a dummy context to make gettext happy

xgettext: warning: msgid 'Remove Podcast' is used without plural and with plural.
             ./qml/FeedListDelegate.qml:279: Here is the occurrence without plural.
             ./qml/FeedListPage.qml:249: Here is the occurrence with plural.
          Workaround: If the msgid is a sentence, change the wording of the sentence; otherwise, use contexts for disambiguation.
xgettext: warning: msgid 'Delete Download' is used without plural and with plural.
             ./qml/GenericEntryDelegate.qml:294: Here is the occurrence without plural.
             ./qml/GenericEntryListView.qml:207: Here is the occurrence with plural.
          Workaround: If the msgid is a sentence, change the wording of the sentence; otherwise, use contexts for disambiguation.
2021-09-30 22:43:49 +02:00
Nicolas Fella
0b272313ed Enable proper Linux CI 2021-09-29 16:05:02 +02:00
Bart De Vries
f0f4da8aa7 Improve contextual actions for the FeedList and EntryLists
This adds "select all", "deselect all" to the page contextual actions
and adds "show podcast info" to the OverlayPage opened by clicking on
the overflow menu button on the cards.
This also adds correct use of plurals for the actions if more than one
item has been selected.
2021-09-29 08:50:00 +02:00
Felipe Kinoshita
e1c80bff3d
Don't use contextProperty to make KAboutData available on QML
Context properties always takes in a QVariant, which means that
whenever you access the property it is re-evaluated because in
between each access the property may be changed as
setContextProperty() can be used at any moment in time.
2021-09-28 17:46:01 -03:00
Bart De Vries
b4d67ffeb4 Solve width binding loop and messed up height for UpdateNotification 2021-09-28 14:42:45 +02:00
Bart De Vries
4a20959522 Switch from DelegateRecycler to reuseItems (except for queue) 2021-09-27 16:48:12 +02:00
Tobias Fella
06e8d8d573 Remove android job 2021-09-26 10:32:15 +02:00
Bart De Vries
78986c5da7 Make FeedList sorting update when the feed details (e.g. title) have been updated 2021-09-25 09:58:36 +02:00
Bart De Vries
074dad647b Fix deleting multiple feeds 2021-09-24 16:10:19 +02:00
Bart De Vries
8900186990 Fix crash on multi-selection download/delete action
Solves #16
2021-09-23 13:17:53 +02:00
Bart De Vries
bd1cf2c5f0 Add FeedListPage sorting
The feeds will be sorted by (1) descending number of unread/unplayed
entries and (2) alphabetically by name.  The current item and current
selection are maintained after re-sorting when the number of unread
entries has changed.
2021-09-21 22:44:12 +02:00
Bart De Vries
c84d8ed47f Add selection, navigation and context menus to FeedListPage 2021-09-21 22:44:12 +02:00
Swapnil Tripathi
a141cda44a Add chapter marks 2021-09-21 20:36:54 +00:00
Bart De Vries
4c2aa9e3ab Port away from deprecated Kirigami.Units.fontMetrics 2021-09-21 14:09:05 +02:00
Bart De Vries
3f0dadd901 Fix minor bugs related to selection/context menus 2021-09-20 09:53:17 +02:00
Bart De Vries
4b2da3533c Enable multi-selection and context menus on all lists of entries
This commit adds keyboard navigation to entry lists.
Selection of items can be done through keyboard (shift+up/down), mouse
(left, left+shift, left+ctrl) or touch (long press).
When items are selected, contextual actions will show up on
the page (useful for touch screens), or, alternatively, a context menu
with the same actions can be opened through right mouse click (useful
for desktop).
If a single entry is selected, then only the relevant actions will be
shown (e.g. only "Mark as Played" if the entry has not been played yet).

Additionally, (database) transactions for the actions have been
optimized.  This was necessary to make sure that actions on large
selections of entries finish within an acceptable time.  E.g. actions on
a list of 1000 items should finish within a few seconds (on all but
underpowered hardware).

BUG: 441764
2021-09-19 21:37:10 +02:00
Bart De Vries
6121f6622f Remove deprecated usages of devicePixelRatio 2021-09-18 21:35:52 +02:00
Bart De Vries
91e43c4013 Add tools-report-bug icon for android
This icon is automatically added to the AboutPage, but is missing on
android if not added explicitly.
2021-09-18 19:46:21 +02:00
Bart De Vries
86d1476687 Implement Filter actions in GUI 2021-09-18 19:07:15 +02:00
Bart De Vries
531c6a2483 Implement EpisodeProxyModel to filter based on status 2021-09-18 19:07:15 +02:00
Bart De Vries
6d5831a715 Add roles to EpisodeModel in preparation for filtering 2021-09-18 19:07:15 +02:00
Bart De Vries
bb8cd2807c Refactor EpisodeModel and DownloadModel to make them more performant 2021-09-18 19:07:15 +02:00