407 Commits

Author SHA1 Message Date
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
0bf3540dbd Also add DBus as dependency for android 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