Bart De Vries
eab5d08acd
Fix database storage bug in ErrorLogModel
2021-05-15 20:31:32 +02:00
Bart De Vries
4e34e76ee0
Replace "feed" by "podcast"
2021-05-12 20:57:56 +02:00
Bart De Vries
f1961abe4c
Add Accessibility information to ListDelegates
2021-05-12 20:48:54 +02:00
Bart De Vries
cce0afd3a0
Add setting to show title overlay on FeedListDelegate images
2021-05-12 20:46:48 +02:00
Bart De Vries
0fc8cca3ef
Add missing brackets to if statement body
2021-05-12 13:53:22 +02:00
Tobias Fella
9cbfde6d7c
Add more license information
2021-05-12 13:43:49 +02:00
Anubhav Choudhary
79659c99f0
[cli] Added functionality to add feed through command line
2021-05-12 13:25:25 +02:00
Tobias Fella
4b32d7699a
Set style for windows
2021-05-12 13:02:55 +02:00
Tobias Fella
55e13ab059
Fix height on resized images
2021-05-12 01:28:41 +02:00
Tobias Fella
6cf133d1d6
Replace "Feed" with "Podcast" in user-visible strings
...
Should be more understandable
2021-05-11 13:12:38 +02:00
Tobias Fella
3d2d935307
Update description
2021-05-11 12:58:19 +02:00
Bart De Vries
dbd108ac44
Make PlayerControls buttons scale properly
...
Also reworked some of the spacings and alignments of items on
PlayerControls to better make use of the available space and look
consistent across themes/styles (e.g. Material).
2021-05-10 15:32:58 +02:00
Bart De Vries
687c4ec7d0
Solve anchor issue with InlineMessage
2021-05-08 21:09:21 +02:00
Bart De Vries
33b3685413
Visual alignment of elements and whitespace corrections
2021-05-08 19:09:28 +02:00
Bart De Vries
a7bac204ad
Implement InlineMessage displaying download/update errors
2021-05-08 18:54:29 +02:00
Bart De Vries
506a419aff
Update text on FeedDetailsPage to apply to podcasts rather than RSS feeds
2021-05-08 16:24:15 +02:00
Bart De Vries
53cba484fb
Only show subtitle in header if it's not empty
2021-05-08 16:20:06 +02:00
Bart De Vries
9c83ee08e8
Show BusyIndicator on newly added feeds until they have finished updating
2021-05-08 16:13:28 +02:00
Bart De Vries
3f4eedb8df
Enable setting for automatic feed refreshing on startup
2021-05-07 22:19:14 +02:00
Bart De Vries
236c579bef
Enable setting for automatic download of new episodes
2021-05-07 22:19:02 +02:00
Bart De Vries
d224eb1b24
Add header to QueuePage with remaining episodes and time
2021-05-07 15:33:39 +02:00
Bart De Vries
1461c7e86c
Remove instance() method from AudioManager
...
AudioManager is currently owned by qml, so it's highly confusing to have
this routine, since it would give a pointer to another instance than the
one owned by qml.
2021-05-07 15:28:14 +02:00
Bart De Vries
cfae4a9fa9
Defer resetting the new flag on feeds until everything's been processed
...
Resetting the flag immediately can lead to situations where all entries
of a new feed are marked as new if the initial feed import gets
interrupted somehow. E.g. when the user quits the application while
doing an initial import.
2021-05-07 10:26:58 +02:00
Bart De Vries
372f91f4fb
Fix mistake: loadPageWithProperties should have been loadPage
2021-05-05 21:56:48 +02:00
Bart De Vries
d4d8daa73d
Make sure that initialPage is not triggered on every globaldrawer action
2021-05-05 16:58:43 +02:00
Bart De Vries
ce360f5ff8
Correct fillMode setting in PlayerControls
2021-05-05 16:57:35 +02:00
Bart De Vries
7e29417db7
Add property to ImageWithFallback to handle image fillMode
2021-05-05 15:56:55 +02:00
Bart De Vries
51b007ce95
Remove settings from Alligator which are not used anymore in Kasts
2021-05-05 15:06:38 +02:00
Bart De Vries
97c3fc6e4d
Use ImageWithFallback also in MinimizedPlayerControls and PlayerControls
...
This leverages re-use of code and simplifies having to define fallbacks
everywhere images are displayed. It also gets rid of the dependency of
logo.png (which became problematic after the alligator logo was removed
from this repo).
2021-05-05 14:06:33 +02:00
Bart De Vries
8e3a688ddf
Don't mark any episodes as new when adding new feeds
...
Tobias was right; marking one (or more) episodes as "new" on a new feed
doesn't make a lot of sense. The latest episode from some podcast feeds
can be very old. Besides, it's quite annoying having a lot of episodes
queued automatically...
2021-05-05 14:04:47 +02:00
Bart De Vries
f2efa50b82
Fix build after logo.png was removed
2021-05-05 13:50:35 +02:00
Bart De Vries
1c44e717ae
Renaming alligator to kasts everywhere
2021-05-03 22:31:45 +02:00
Bart De Vries
dd5e10f973
Fix whitespace and inconsistencies in action text
2021-05-03 16:00:05 +02:00
Bart De Vries
0846dd9d9b
Disable DBus as dependency for Android
2021-05-03 12:59:06 +02:00
Bart De Vries
fb1516281e
Avoid double "Add to queue" actions on EntryPage
...
Instead of showing "add to queue" as main action and left action, the main
action will show "delete download", leaving "add to queue" as left
action.
This does mean that "delete download" can be main action or right
action, but this is nevertheless an improvement for now...
2021-05-02 15:03:44 +02:00
Bart De Vries
34c5e5309c
Implement timeString method to create HH:mm:ss strings from qint64
...
This method is now used in all places where a HH:mm:ss string is
required.
2021-05-02 09:42:49 +02:00
Bart De Vries
173b86b85d
Get rid of downloadStatusChanged in Enclosure
...
Instead change the signature on statusChanged so it can pass on all
required information instead of needing two signals with separate
signatures.
2021-05-02 09:05:26 +02:00
Bart De Vries
c9af45f2ce
Change from qmlRegisterSingletonType to qmlRegisterSingletonInstance
2021-05-02 09:04:19 +02:00
Bart De Vries
1b1654d1f4
Apply clang-format
2021-05-01 21:35:37 +02:00
Bart De Vries
e774e09f48
Fix missing pre-compiler directives for android in powermanagementinterface
2021-05-01 21:21:09 +02:00
Bart De Vries
d1618943f5
Update based on review by Tobias Fella
2021-05-01 21:09:07 +02:00
Bart De Vries
4aa2f14eb7
Apply 50 suggestion(s) to 19 file(s)
2021-05-01 18:59:08 +00:00
Bart De Vries
5a9aa35748
Generate dbus sleep inhbit interfaces from XML
2021-04-30 23:12:22 +02:00
Bart De Vries
6edbd91f18
Set setPreventSleep in play() and pause()
...
Making it toggle based on the playerState did not work properly because
the stream is toggling between pause and play several times in the
prepareAudioStream method.
2021-04-30 21:45:11 +02:00
Bart De Vries
cbf0d9c622
Comment out some qDebug() statements
2021-04-30 19:13:43 +02:00
Bart De Vries
2e777630bc
Remove asynchronous loading of Loader in ImageWithFallback
2021-04-30 14:47:13 +02:00
Bart De Vries
8ce5ee0e88
Add dialog-close to icons for Android
2021-04-30 14:46:48 +02:00
Bart De Vries
ead73ac2fe
Safeguard against QMediaPlayer::InvalidMedia
...
In case of the InvalidMedia status, skip to next track and delete the
invalid enclosure.
2021-04-30 11:57:39 +02:00
Bart De Vries
3439d1c34b
Add progress loader symbols to loading images and refreshing feeds
2021-04-29 22:48:43 +02:00
Bart De Vries
b2568e390b
Finish ImageWithFallback and use cachedImage everywhere
2021-04-29 22:48:43 +02:00
Bart De Vries
c35f057a19
Add cachedImage properties to Entry and Feed
...
This property returns the path to the cached image if it's been
downloaded, or return "" if it's not been downloaded yet, or "no-image"
in case the image property does not contain a URL to an image.
2021-04-29 22:48:43 +02:00
Bart De Vries
7e5206a61c
Make ImageWithFallback load images dynamically
2021-04-29 22:48:43 +02:00
Bart De Vries
f0106aceef
Introduce ImageWithFallback
2021-04-29 22:48:43 +02:00
Bart De Vries
f91dfda504
Use native onClicked in FeedListDelegate
2021-04-29 22:48:43 +02:00
Bart De Vries
16a5cfbcf9
Add OverlaySheet with actions on FeedList
2021-04-29 22:48:43 +02:00
Bart De Vries
1ebbafc87f
Work on getting feedList to look like CardsGridView
...
Next up, add actions somehow.
2021-04-29 22:48:43 +02:00
Bart De Vries
cfea2e9ad1
Add close button to AddFeed OverlaySheet
2021-04-29 22:48:43 +02:00
Bart De Vries
184ba72208
Safeguard against downloaded enclosures of 0 size
2021-04-29 22:19:34 +02:00
Bart De Vries
9b7d943a89
Add actions to be able to remove non-podcast entries from queue
2021-04-29 11:32:16 +02:00
Bart De Vries
36ad248e55
Do some additional checks on entry before loading in AudioManager
2021-04-29 11:28:59 +02:00
Bart De Vries
943b66207b
Fix automatic resizing of articles; re-instate custom font sizes
2021-04-27 22:08:19 +02:00
Bart De Vries
9ebc6ecb7e
Fix wonky behaviour of FooterBar when resizing and PlayerControls are open
2021-04-27 21:46:43 +02:00
Bart De Vries
02e92f9a8f
Remove numberNewEpisodes from settings
...
Also clean up the unused allowStreaming setting
2021-04-27 20:58:01 +02:00
Bart De Vries
6938b331c3
Move toggleRemainingTime to general settings group
2021-04-27 20:48:51 +02:00
Bart De Vries
4d526e89c3
Fix incorrect text on actions on EntryPage
2021-04-27 11:21:23 +02:00
Bart De Vries
64ba96fa32
Remove irrelevant commented out line
2021-04-27 10:54:18 +02:00
Bart De Vries
49d7897e97
Rename showRemainingTime to toggleRemainingTime
2021-04-27 10:16:38 +02:00
Bart De Vries
f26c1d5854
Add Bart De Vries as author in AboutData
2021-04-27 10:00:17 +02:00
Bart De Vries
76c30dff87
Fix issues identified in review by Tobias Fella
2021-04-27 09:43:58 +02:00
Bart De Vries
c37ee7c7dd
Apply 17 suggestion(s) to 7 file(s)
2021-04-27 07:31:26 +00:00
Bart De Vries
f2c6c3fae2
Avoid race condition when adding feed
...
When adding a feed and simultaneously starting a feed update, a race
condition could happen where the feed update would catch up with the
feed adding, and start adding and marking old episodes as new before
the original addFeed method would reach them.
2021-04-26 16:58:22 +02:00
Bart De Vries
0d275b8400
Don't show clear error button when there are no errors
...
Also add the icon to the icons to be packed for android.
2021-04-26 10:57:55 +02:00
Bart De Vries
aa5dd6bdbf
Minor fixes for the "Refresh all feeds" actions
2021-04-26 08:05:06 +02:00
Bart De Vries
7d21f5fbe7
Finish basic ErrorListPage implementation
2021-04-25 14:34:14 +02:00
Bart De Vries
3653aa4687
More work on the ErrorListPage delegate
2021-04-25 09:54:15 +02:00
Bart De Vries
5a0972372b
Add ErrorModel, just a placholder GUI for now
2021-04-24 23:32:10 +02:00
Bart De Vries
51db7ea1cf
Only use custom gst-pipeline on linux
...
GStreamer is not used as QMediaPlayer backend on other platforms, so
audio will not start with a custom gst-pipeline on Android and Windows.
Still needs a solution to get rid of the horrible pitch change on
Android and Windows, though.
2021-04-23 10:55:59 +02:00
Bart De Vries
e2d59a69b0
Move audio positioning hack into a separate method
...
This allows the hack to be re-used in the play() method. Apparently on
some systems the stream becomes unresponsive again after pausing. So
probably it's required to ensure that the stream is fully seekable and
buffered before restarting playback.
2021-04-22 16:48:13 +02:00
Bart De Vries
28d6f7f525
Fix compiler warnings
2021-04-22 11:00:17 +02:00
Bart De Vries
a50c8bf001
Add capability to monitor ongoing downloads
2021-04-21 23:09:19 +02:00
Bart De Vries
8c32389b65
Add rounded corners to image on PlayerControls
2021-04-21 22:20:58 +02:00
Bart De Vries
fe66490c8f
Remove settings from SettingsPage which are not yet fully implemented
2021-04-21 20:43:18 +02:00
Bart De Vries
6c7a271970
Use custom gst-pipeline to avoid pitch changes when audio is sped up
2021-04-21 20:25:01 +02:00
Bart De Vries
cbc9f11999
Remove redundant mousearea
2021-04-21 15:41:06 +02:00
Bart De Vries
5a28e48be0
Solve problem with padding in PlayerControls
...
Kirigami.Page is always adding padding around the content items. This
gives visual artifacts with the swipepage on the player controls. Part
of the previous page was still visible because the width of the
swipepage entries is less than the width of the full Kirigami.Page that
they are part of.
2021-04-21 15:27:42 +02:00
Bart De Vries
73c333cf61
Add possibility to delete feed from entrylistpage
2021-04-21 14:53:03 +02:00
Bart De Vries
20b767711a
Add rounding to images in genericentrydelegate
...
Also remove the unused rounding in the feedlistdelegate
2021-04-21 14:53:03 +02:00
Bart De Vries
2b5597cbd6
Redesign feedlistpage and feedlistdelegate
2021-04-21 14:53:03 +02:00
Bart De Vries
3870338e65
Add sourceSize to images
2021-04-21 14:53:03 +02:00
Bart De Vries
d949a357ef
Center countlabel in update notification
2021-04-21 14:53:03 +02:00
Bart De Vries
02340ec362
Overload addFeed
2021-04-21 14:53:03 +02:00
Bart De Vries
21b47effa9
Take tabbar into account when displaying update notification
2021-04-21 14:53:03 +02:00
Bart De Vries
cac0a8b8b6
Adapt signature of error signal
...
This will be needed for future error logging.
2021-04-21 14:53:03 +02:00
Bart De Vries
295b98a903
Refactor import feeds to be able to show progress
2021-04-21 14:53:03 +02:00
Bart De Vries
695baf9cbb
Add fetch function that can take a list of urls
2021-04-21 14:53:03 +02:00
Bart De Vries
28e8051500
Implement update status progress indicator
2021-04-21 14:53:03 +02:00
Bart De Vries
53e2560796
Implement backend for feed update progress
2021-04-21 14:53:03 +02:00
Bart De Vries
3c51ad2052
Remove unnecessary unread tab in episodes
2021-04-21 14:53:03 +02:00
Bart De Vries
6a256baa18
Disable more debug output
...
Disable in fetcher and datamanager
2021-04-21 14:53:03 +02:00
Bart De Vries
6cb062dd9c
Disable debug output in queuemodel
2021-04-21 14:53:03 +02:00
Bart De Vries
1faf092d48
Solve problem with entrypage not scrolling
...
The issue was because of a Connection as final component. That seems to
block the scrolling.
By putting the Connection at the top of the ScrollablePage, all problems
are solved.
Very strange ...
2021-04-21 14:53:03 +02:00
Bart De Vries
3a1c88038a
Make sure that drawer handles don't overlap with bottom tabbars
2021-04-21 14:53:03 +02:00
Bart De Vries
c2e4822e85
Remove double definition of duration property in enclosure
2021-04-21 14:53:03 +02:00
Bart De Vries
68771f4911
Solve problem in logic where it would only fetch the first new episode
2021-04-21 14:53:03 +02:00
Bart De Vries
a45351e1de
Make entry models only update if something really changed
2021-04-21 14:53:03 +02:00
Bart De Vries
0f957841b3
Adapt actions specifically for Downloads page
2021-04-21 14:53:03 +02:00
Bart De Vries
7ebfebe01e
Fix potential issue with processing update of authors
2021-04-21 14:53:03 +02:00
Bart De Vries
ae13eb8cfd
Begin refactoring feed updating routines for speed
...
Make sure that property change signals are only emitted when something
has really changed. So far part "feed" has been done. Entries,
enclosures and entry authors still need to be done.
2021-04-21 14:53:03 +02:00
Bart De Vries
dc3599f49c
Don't make PagePool cache pages
...
This has a dramatic performance impact when refreshing feeds when lots
of pages have already been opened.
2021-04-21 14:53:03 +02:00
Bart De Vries
2b11558279
Mark some signal parameters as unused
2021-04-21 14:53:03 +02:00
Bart De Vries
7be1ed28ec
Disable debug output in audiomanager
2021-04-21 14:53:03 +02:00
Bart De Vries
423409403e
Refactor size property in Enclosure
...
This will make sure that the size is automatically updated in the GUI if
it's corrected based on the real, downloaded audio file.
2021-04-21 14:53:03 +02:00
Bart De Vries
7a900b5921
Update enclosure duration if needed
...
If the duration that is mentioned in the enclosure doesn't correspond to
the real duration then update to the real duration in the database.
2021-04-21 14:53:03 +02:00
Bart De Vries
e9d20ec569
Implement Downloads page
...
This change includes an update to the database, adding a downloaded
column in Enclosures.
2021-04-21 14:53:03 +02:00
Bart De Vries
98bc7ffa61
Add icons to make sure they are available on Android
2021-04-21 14:53:03 +02:00
Bart De Vries
6ae1bf5f87
More work on EpisodeSwipePage
...
Implemented
- unread episodes (still looking for better name)
- mobile and non-mobile tab-views
- i18n and messages when lists are empty
2021-04-21 14:53:03 +02:00
Bart De Vries
29d625e810
First attempt at Swipeable episode list (all, new, unread)
2021-04-21 14:53:03 +02:00
Bart De Vries
e92b02795e
Update Kirigami include version
2021-04-21 14:53:03 +02:00
Bart De Vries
130b10aefb
Add first version of EpisodeListPage
2021-04-21 14:53:03 +02:00
Bart De Vries
62440e8609
Remove unneeded includes in models
2021-04-21 14:53:03 +02:00
Bart De Vries
b8b8a312e9
Set opacity to 0.5 for Entries that have been 'read'
2021-04-21 14:53:03 +02:00
Bart De Vries
4fa45b0075
Save last playing track in database instead of config file
2021-04-21 14:53:03 +02:00
Bart De Vries
ed2d1ee2c8
Remove old, unused code
2021-04-21 14:53:03 +02:00
Bart De Vries
da456a19f9
Fix switch to next track on removing currently playing track from Queue
2021-04-21 14:53:02 +02:00
Bart De Vries
07afc98978
Consolidate all EntryDelegate actions
...
QueueDelegates and EntryListDelegates are now using the same actions
defined in GenericEntryDelegate.
2021-04-21 14:53:02 +02:00
Bart De Vries
1ceb5532b2
Close EntryPage when Entry is opened from Queue and Entry is removed from Queue
2021-04-21 14:53:02 +02:00
Bart De Vries
952dbdea5e
Refactor Queue and EntryList to use a GenericEntryDelegate
...
Still to be done is putting the actions into the GenericEntryDelegate
itself.
2021-04-21 14:53:02 +02:00
Bart De Vries
5026703bdd
Add contextual actions to EntryPage
2021-04-21 14:53:02 +02:00
Bart De Vries
9364a5b88f
Clean up old code in comments
2021-04-21 14:53:02 +02:00
Bart De Vries
05e03d20e3
Close entrypage when removing that item from queue when in queuepage
2021-04-21 14:53:02 +02:00
Bart De Vries
b2dd9961ed
Rework actions on queue, entrylist and entrypage
2021-04-21 14:53:02 +02:00
Bart De Vries
23b6b68500
Make sure that canGoNext is accurate when changing anything in queue
2021-04-21 14:53:02 +02:00
Bart De Vries
ecceb5c0fe
Make header on info page of PlayerControl slightly smaller
2021-04-21 14:53:02 +02:00
Bart De Vries
5f4a24a11d
Refactor adding/removing to queue
...
All adding and removing should now go through the entry itself, using
queueStatus.
2021-04-21 14:53:02 +02:00
Bart De Vries
f681ef0f4f
Change to inline header for EntryPage
...
This includes a minor update to GenericListHeader
2021-04-21 14:53:02 +02:00
Bart De Vries
7a3cd64c6b
Add "addToQueue" action for entry if relevant
2021-04-21 14:53:02 +02:00
Bart De Vries
f5930c8399
Make sure that queue status of items is correct
2021-04-21 14:53:02 +02:00
Bart De Vries
7113b23530
Add title to entry description on PlayerControls
2021-04-21 14:53:02 +02:00
Bart De Vries
5a3a5f40d1
Use header on EntryPage
2021-04-21 14:53:02 +02:00
Bart De Vries
8abbae4772
Refactor to re-usable header for list and details pages
2021-04-21 14:53:02 +02:00
Bart De Vries
97d8e8290a
Change default visible action on EntryListDelegate
2021-04-21 14:53:02 +02:00
Bart De Vries
28b47f6a4b
Refactor addToQueue and change visible actions on EntryListDelegate
2021-04-21 14:53:02 +02:00
Bart De Vries
015851287d
Only enable one visible action on queuedelegate
2021-04-21 14:53:02 +02:00
Bart De Vries
d17b422547
Also add playProgressBar to EntryListDelegate
2021-04-21 14:53:02 +02:00
Bart De Vries
00a9d75c33
Make sure that duration and position labels are readable on resize
2021-04-21 14:53:02 +02:00
Bart De Vries
2e118d9a7e
Make sure that canGoNext status is still accurate when queue items have been moved around
2021-04-21 14:53:02 +02:00
Bart De Vries
401f12c02d
Adapt spacing of controls on PlayerControls
2021-04-21 14:53:02 +02:00
Bart De Vries
4edacbc5e8
Make drawer handles disappear when PlayerControls are opened
2021-04-21 14:53:02 +02:00
Bart De Vries
6eca639ce4
Add button to close PlayerControls
2021-04-21 14:53:02 +02:00
Bart De Vries
97bed3def8
Add playProgress progressbar to entry items in queue
2021-04-21 14:53:02 +02:00
Bart De Vries
c158222d33
Delete old commented code and minor restructuring
2021-04-21 14:53:02 +02:00
Bart De Vries
5edc0b0f3e
Fix drawer handles getting in the way of the miniplayer
2021-04-21 14:53:02 +02:00
Bart De Vries
364dd52f9a
Implement swipe to open/close miniplayer/full player
2021-04-21 14:53:02 +02:00
Bart De Vries
0d778c2a47
Add missing bit for MPRIS taskbar progress (which still doesn't work)
2021-04-21 14:53:02 +02:00
Bart De Vries
49baa7915b
More elegant solution for setting MPRIS2 audio duration when changing tracks
2021-04-21 14:53:02 +02:00
Bart De Vries
a624040ef3
Make player robust against having no track loaded at end of queue
2021-04-21 14:53:02 +02:00
Bart De Vries
8c1295372a
Fix enclosure status
...
Enclosure wasn't checking if file existed on disk. Hence, if the
enclosure was reporting a file size of 0 (which matches the non-existent
file size, then it would set the status incorrectly to Enclosure::Downloaded.
2021-04-21 14:53:02 +02:00
Bart De Vries
65c5a16dc8
Expose duration from Enclosure
2021-04-21 14:53:02 +02:00
Bart De Vries
f85dbd0572
Remove episodes from queue once they've been fully played
2021-04-21 14:53:02 +02:00
Bart De Vries
b2ba953a33
Mark fully played episodes as read
2021-04-21 14:53:02 +02:00
Bart De Vries
2f389e02aa
Move some buttons around to more logical places
2021-04-21 14:53:02 +02:00
Bart De Vries
32f01b03bd
Enable next button in Player
...
This functionality has safeguards built in, including a canGoNext
property.
This can be extended with streaming playing in the future.
2021-04-21 14:53:02 +02:00
Bart De Vries
3cc8eeffb4
Solve problem with MPRIS2 handles not working
...
This only happened when no track was loaded at startup.
According to the MPRIS2 spec, a special "properties changed" signal
needs to be sent.
2021-04-21 14:53:02 +02:00
Bart De Vries
2afc8803f8
Final(?) step of cleaning up MPRIS2 implementation
2021-04-21 14:53:02 +02:00
Bart De Vries
3e79321c90
Solve a few remaining problems with MPRIS2
...
Now the application doesn't crash anymore if no track is loading on
startup.
Seeking through MPRIS2 also works again.
2021-04-21 14:53:02 +02:00
Bart De Vries
60330608ac
Refactor the MPRIS2 MediaPlayer2.Player implementation
...
Changed most items to refer to the underlying AudioManager methods and
signals.
WIP: Still need to check the ProgressOnTaskBar stuff.
2021-04-21 14:53:02 +02:00
Bart De Vries
7c4658db2d
Change implementation of seekable in AudioManager
...
We cannot simply pass on the value from the underlying QMediaPlayer,
since it is not reliable (see hacks concerning restoring startup player
position). Instead we keep track of it ourselves and send out the
signal in the proper places.
2021-04-21 14:53:02 +02:00
Bart De Vries
21feef8ce0
Refactor to use skipForward and skipBackward
...
This is done to make the distinction between skipping time and changing
track.
2021-04-21 14:53:02 +02:00
Bart De Vries
791c25ad19
Use next() and previous() in PlayerControl
...
Also change to std::min and std::max for the implementation of next and
previous.
2021-04-21 14:53:02 +02:00
Bart De Vries
2aa237342c
Minor tweak to let MPRIS2 load the correct track info on startup
...
It's still crashing without a proper track being loaded on startup.
Still needs to be resolved.
2021-04-21 14:53:02 +02:00
Bart De Vries
c7164b3f6b
Refactor audiomanager to be closer to MPRIS2 interface
2021-04-21 14:53:02 +02:00
Bart De Vries
139baba454
Remove unused ifdef
2021-04-21 14:53:02 +02:00
Bart De Vries
8fff1e127e
Remove commented, old qml code
2021-04-21 14:53:02 +02:00
Bart De Vries
48e0e509f7
Switch to using PagePool
2021-04-21 14:53:02 +02:00
Bart De Vries
ed58c4eda7
Do not show insertToQueue button if already added to Queue
2021-04-21 14:53:02 +02:00
Bart De Vries
d9013ede9d
Fix another issue with player startup position recovery
2021-04-21 14:53:02 +02:00
Bart De Vries
569c988962
Enabled MPRIS2 (WIP)
...
Simple play controls are working, but there seems to be quite a bit
missing still.
Proper signals are not triggered for the first track on startup.
2021-04-21 14:53:02 +02:00
Bart De Vries
f626cee7af
Fix saving last playing item when application is shutdown
2021-04-21 14:53:02 +02:00
Bart De Vries
593934bc4f
Initial copy and adaptation of MPRIS2 from elisa (WIP)
...
This MPRIS2 implementation compiles without errors, but is not yet
instantiated within the application itself.
To be continued...
2021-04-21 14:53:02 +02:00
Bart De Vries
7e39d83f90
Restore last playing track on startup
2021-04-21 14:53:02 +02:00
Bart De Vries
f5c20a92e2
Slightly adapt (temporary) debug information from enclosure
2021-04-21 14:53:02 +02:00
Bart De Vries
515064e618
Change enclosure license headers
2021-04-21 14:53:02 +02:00
Bart De Vries
f88fb22153
Finally implement restoring playback positions!
2021-04-21 14:53:02 +02:00
Bart De Vries
129707009c
Implement the framework for custom audio starting position
...
What's still needed is the backend for saving the current position
and making the audio player aware of that position when the entry
is changed.
2021-04-21 14:53:02 +02:00
Bart De Vries
527ed67d4a
Remove "source" property from audiomanager
...
Also rename the internal variables of audiomanager to be aligned
with the naming conventions used elsewhere.
2021-04-21 14:53:02 +02:00
Bart De Vries
d531b892e8
Adapt license headers of audiomanager
2021-04-21 14:53:02 +02:00
Bart De Vries
6b62ba2cf9
Add playbackrate capability to AudioManager
2021-04-21 14:53:02 +02:00
Bart De Vries
33f380e387
Clarify comment about read/new status
2021-04-21 14:53:02 +02:00
Bart De Vries
e722ec29ee
Solve issue with miniplayer not hiding on startup
2021-04-21 14:53:02 +02:00
Bart De Vries
3aa4b836d2
Make PlayerManager work
...
Still one issue with the minimized player opening on startup
2021-04-21 14:53:02 +02:00
Bart De Vries
7d94792872
Add audiomanager and powermanagementinterface
...
Both classes are based on classes taken from Elisa.
The audiomanager class will be adapted to add functionality like saving
and restoring play positions and interfacing with MPRIS2.
2021-04-21 14:53:02 +02:00
Bart De Vries
16c052250c
Make main thread more responsive when updating feeds
2021-04-21 14:53:02 +02:00
Bart De Vries
ee13a29d10
Add playposition tracking in enclosure
2021-04-21 14:53:02 +02:00
Bart De Vries
e174269332
Make time countdown setting in player persistent
2021-04-21 14:53:02 +02:00
Bart De Vries
e1b374e375
Make app restore last playing item
2021-04-21 14:53:02 +02:00
Bart De Vries
218b86807e
Make application remember the last opened main page
2021-04-21 14:53:02 +02:00
Bart De Vries
fbaf084a37
Solve issue with imported feeds being processed twice
2021-04-21 14:53:02 +02:00
Bart De Vries
65ef16017b
Rename AlligatorSettings to SettingsManager
2021-04-21 14:53:02 +02:00
Bart De Vries
7468c35b9a
Enable autoDownload
...
There seems to still be a problem with the images not being fetched for
the newly added queue items.
2021-04-21 14:53:02 +02:00
Bart De Vries
718a9ef734
Delete feed pointer as last action
...
This to ensure that there will not be a dangling pointer when doing all
the other delete operations (entries, enclosures, files and images).
2021-04-21 14:53:02 +02:00
Bart De Vries
20730ccc6f
Add autoQueue option to SettingsPage
2021-04-21 14:53:02 +02:00
Bart De Vries
7232238d7b
Add additional checks after enclosure has been downloaded
...
The file size in the database will be corrected if it doesn't match the
real file size.
The "new" status will be unset once the file has been downloaded.
2021-04-21 14:53:02 +02:00
Bart De Vries
61e3af704b
Add "new" label also to queue entries
2021-04-21 14:53:02 +02:00
Bart De Vries
a8e174739f
Implement "new" episodes feature and autoQueue
2021-04-21 14:53:02 +02:00
Bart De Vries
26986616c7
Only mark episodes as read/new on new feeds, not on existing ones
2021-04-21 14:53:02 +02:00
Bart De Vries
056a7b7835
Fix segmentation fault due to non-existent entry in m_feeds
2021-04-21 14:53:02 +02:00
Bart De Vries
3a4cdbfec0
Implement limited number of new entries for new feed
2021-04-21 14:53:02 +02:00
Bart De Vries
58b5719f71
Minor whitespace correction
2021-04-21 14:53:02 +02:00
Bart De Vries
436e66542a
Change to singleton AlligatorSettings class
2021-04-21 14:53:02 +02:00
Bart De Vries
81c2ad90d1
Add "new" label to entry list items
2021-04-21 14:53:02 +02:00
Bart De Vries
4455545daa
More optimizations of PlayerControls
2021-04-21 14:53:02 +02:00
Bart De Vries
a4dea193ad
Make properties for miniplayer size
2021-04-21 14:53:02 +02:00
Bart De Vries
5d5ca2c58b
Add title and feed name below image in PlayerControls
2021-04-21 14:53:02 +02:00
Bart De Vries
518dbf293e
Fix scrollview details flickable
2021-04-21 14:53:02 +02:00
Bart De Vries
ec6e47aea7
Change font size on miniplayer
2021-04-21 14:53:02 +02:00
Bart De Vries
5ed70c41ff
Remove unused Feed constructor
...
This constructor was also outdated.
2021-04-21 14:53:02 +02:00
Bart De Vries
bbba177462
More changes to PlayerControls
...
Trying to put the episode description into the swipeview with a minimal
set of code. This will allow EntryPage to be refactored with nicer
headers etc.
2021-04-21 14:53:02 +02:00
Bart De Vries
71c86d5645
Add TODO for enclosure file size check
2021-04-21 14:53:02 +02:00
Bart De Vries
8159e5a2ce
Redesign FeedDetailsPage
2021-04-21 14:53:02 +02:00
Bart De Vries
3cbea5eb17
Enable refreshing on QueuePage
2021-04-21 14:53:02 +02:00
Bart De Vries
6cd88f5116
Refactor and redesign PlayerControls
2021-04-21 14:53:02 +02:00
Bart De Vries
49e9e7e1e7
Restyle and refactor MinimizedPlayerControls
2021-04-21 14:53:02 +02:00
Bart De Vries
e85a3068fc
Add check whether to insert or update enclosure to database
2021-04-21 14:53:02 +02:00
Bart De Vries
b9433a348a
Minor adjustments
2021-04-21 14:53:02 +02:00
Bart De Vries
5d6f05e55e
Update copyright headers
2021-04-21 14:53:02 +02:00
Bart De Vries
0ee88666e9
Fixed text in EntryListPage header and make more mobile friendly
2021-04-21 14:53:02 +02:00
Bart De Vries
88b308984d
Update qml import versions
2021-04-21 14:53:02 +02:00
Bart De Vries
3b7d2332a7
Change icon for 'remove from queue' action
2021-04-21 14:53:02 +02:00
Bart De Vries
59da275f0e
Completely fix author update on feed refresh/add
2021-04-21 14:53:02 +02:00
Bart De Vries
df9dd521f3
Work on EntryList qml (WIP)
2021-04-21 14:53:02 +02:00
Bart De Vries
e092354696
Partially solve adding author for feed
2021-04-21 14:53:02 +02:00
Bart De Vries
ed7f75de13
Send proper signals when adding or removing queue items
2021-04-21 14:53:02 +02:00
Bart De Vries
a9b86d0e44
Add podcast specific settings to Settings
2021-04-21 14:53:02 +02:00
Bart De Vries
8e23123e84
Investigate ways to simplify local play and streaming
2021-04-21 14:53:02 +02:00
Bart De Vries
75f8f93da7
Change paths where images and enclosures are saved
...
Images are now stored in the cache directory in a dedicated subdir
called "images".
Enclosures are stored in the data directory in a dedicated subdir
"enclosures".
2021-04-21 14:53:02 +02:00
Bart De Vries
f061b9a00e
Make sure to delete entry images when feed is removed
2021-04-21 14:53:02 +02:00
Bart De Vries
06bffdb5e3
Add "new" and "playposition" to database
...
These fields have been added to, respectively, Entries and Enclosures.
2021-04-21 14:53:02 +02:00
Bart De Vries
5efd4f85f8
Optimize image loading (partially) and improve QueueDelegate
2021-04-21 14:53:02 +02:00
Bart De Vries
ddb64c5f42
Try to use recycler on entrylistdelegate
2021-04-21 14:53:02 +02:00
Bart De Vries
8506068b1f
Fix issues when there is no feed/entry image
2021-04-21 14:53:02 +02:00
Bart De Vries
83526b0a12
Minor changes
2021-04-21 14:53:02 +02:00
Bart De Vries
bb7f3393a7
Enable entry images in listviews/listmodels
2021-04-21 14:53:02 +02:00
Bart De Vries
8bb027dc82
Fix not popping enough pages when feed is removed
2021-04-21 14:53:02 +02:00
Bart De Vries
0aa9e91f19
Add support for additional itunes tags
...
Most of the itunes fields are used as backup for non-existent regular
fields.
One exception is the entry image, which only exists in itunes tags.
2021-04-21 14:53:02 +02:00
Bart De Vries
030bc07bb5
Remove unneeded PodcastPlayerPage and debug lines in main.cpp
2021-04-21 14:53:00 +02:00
Bart De Vries
8b78de960b
Initial attempt at parsing extra itunes tags
2021-04-21 14:52:33 +02:00
Bart De Vries
7e05231b63
Make sure that everything is cleaned up when removing a feed
2021-04-21 14:52:33 +02:00
Bart De Vries
e670a65f6d
Finish most of the Queue manipulations
2021-04-21 14:52:33 +02:00
Bart De Vries
4f11060a41
Queue is functional again
2021-04-21 14:52:33 +02:00
Bart De Vries
5e0772eb63
More work on queuemodel refactoring
2021-04-21 14:52:33 +02:00