Commit Graph

805 Commits

Author SHA1 Message Date
Jack Hill d865d3b27d KF6: Port away from manually closing Kirigami.MenuDialog
This is now handled automatically by the dialog itself
2023-09-14 14:36:43 +00:00
Bart De Vries 2a58b3002e Remove all qt5-only code 2023-09-14 16:26:37 +02:00
Tobias Fella b33222cc68 Remove all QML import versions 2023-09-14 13:04:37 +00:00
Bart De Vries fbb7cda6f1 More qml/kiragami changes and fixes 2023-09-13 13:09:29 +02:00
Bart De Vries 8c06247e16 Migrate to KF6 Page actions 2023-09-13 13:09:29 +02:00
Tobias Fella b1414a18f2 Port QML to Qt6 2023-09-13 13:09:29 +02:00
Tobias Fella a0abb5019b Use AboutPage from KirigamiAddons.FormCard 2023-09-06 10:21:33 +00:00
Carl Schwan 19d0129d01
Adapt to MobileForm -> FormCard renaming
This also simplify some code
2023-08-09 17:07:19 +02:00
Carl Schwan 507e502ebe
settings: Port to new KirigamiAddons.CategorizedSettings 2023-08-09 16:32:59 +02:00
Bart De Vries 376bb6db29 Revert to non-proxied QueueModel
The proxy model was causing issues with item dragging.
The model would reset after each swapped item.  This meant that items
could only be swapped one position at a time.
2023-07-27 16:50:59 +02:00
Bart De Vries af6e581bee Fix and prevent nullptr dereferences in AudioManager
This would happen when the current track is changed to "no track".
Signals from the backend KMediaSession would still trigger duration()
calls which would try to dereference the pointer to the current track
entry.
2023-07-27 13:33:41 +02:00
Bart De Vries c3ca038af7 Implement backend to allow Feed list sort and search
The current list of things to sort on (ascending and descending), includes:
- unplayed episodes
- new episodes
- favorite episodes
- title (alphabetical)
For the first three categories, the value of the sort quantity will be shown
in the upper right corner of the delegate.

BUG: 471012
CCBUG: 459885
2023-07-27 09:24:03 +00:00
Bart De Vries 5c8502718a Implement sorting for queue and episode lists
Also move filter action (menu) from the search bar back into the main toolbar.

BUG: 466855
2023-07-26 08:17:23 +00:00
Emir SARI 5a69783ffb Adopt string casings according to HIG 2023-07-25 17:06:52 +00:00
Bart De Vries cad8af469e Add missing icons for android build 2023-07-23 16:01:35 +02:00
Bart De Vries dea35cc271 Port to AlbumMaximizeComponent from kirigami-addons
Replace the custom FullScreenImage component (which was a copy of a
component used in other apps) with the new AlbumMaximizeComponent from
kirigami-addons.
2023-07-22 16:12:32 +02:00
Bart De Vries a77a312533 Give priority to image embedded in audio file if it exists 2023-07-22 14:09:03 +00:00
Emir SARI 24b8271f8b Adopt string casings according to HIG 2023-07-20 09:35:57 +00:00
Emir SARI c4cb10b7aa Adopt string casings according to HIG
This commit also improve formatting and style in some places.
2023-07-19 12:30:03 +00:00
Bart De Vries 46fc8904ec Restrict filenames to alphanumeric characters 2023-07-17 14:52:02 +02:00
Eamonn Rea dc311cac7b Use Entry title to set downloaded file name
Instead of using the MD5 hash of the enclosure download URL, we
create a filename which follows `feedname/entry_title.hash.ext`, where
feedname is a uniquefied feed title (stored in the DB), a truncated version
of the entry title, a shortened hash based on the download URL, and the
original file extension extracted from the download URL.

BUG: 457848
2023-07-17 14:52:02 +02:00
Bart De Vries 319c579ba0 Fix mMedia nullptr dereference in VLC backend metadata call
CCBUG: 470263
2023-06-18 16:35:29 +02:00
Bart De Vries 8b3603eb56 More safeguards for getFeed and getEntry calls 2023-06-18 16:31:42 +02:00
Bart De Vries b529bfc3ca Fix segfault when trying to remove a non-subscribed podcast
BUG: 471107
2023-06-18 15:12:59 +02:00
Bart De Vries 21952c67e9 Make grace time configurable for marking episodes as played
BUG: 468687
2023-06-09 11:11:42 +00:00
Bart De Vries 0c54ab7edf Refactor to use QNetworkInformation instead of SolidExtras for Qt6
SolidExtras will still be used for the Qt5 version for the time being.
This refactoring makes it trivial to rip out SolidExtras once the jump
to Qt6-only will be made.
2023-06-02 19:11:10 +02:00
Bart De Vries eac74ecbbb [KMediaSession] Only send MRPIS2 positionChanged signal on seek
Stop spamming the DBus with positionChanged signals if playback is
progressing at the nominal playback rate.  This brings the
implementation in line with the MPRIS2 player spec.  The previous
implementation was causing android battery drain issues with KDEConnect
constantly updating the position (and player details) on the notification
widget.
This implementation will still send the current playback position every
10 seconds to ensure that clients that don't implement the standard
properly or did not receive previous messages, will still get regularly
updated.
This also fixes correct signaling of playback rate changes over DBus.
2023-06-01 10:42:58 +02:00
Bart De Vries caff8da25f Expand FeedListPage PlaceholderMessage with helpful actions 2023-05-25 18:47:46 +02:00
Bart De Vries cbf2888754 Also update fullscreen image if chapter image in HeaderBar changes
BUG: 470194
2023-05-25 18:37:39 +02:00
Harry Kaimenas 39f215c897 Add adjustable seek times
Make seek times adjustable. Expose seek time under Playback Settings.
Set min time allowed in seconds to 1 and max time in seconds to 300.

FEATURE: 468686
2023-05-11 07:26:31 +00:00
Bart De Vries f69366f6fd Load custom icons through fallbackSearchPaths
BUG: 469567
2023-05-10 14:30:43 +02:00
Bart De Vries 1115f2b686 Update i18n to add context to FeedListPage 2023-04-28 14:13:08 +02:00
Bart De Vries 6865c8c57e Add actionName for SettingsActions (preparation for kf6) 2023-04-26 16:26:46 +02:00
Bart De Vries e6052dbbba Also handle opening the settings dialog through pushPage() 2023-04-26 16:23:35 +02:00
Bart De Vries 188c1d08e4 Use MenuItem for search field selection in GlobalSearchField 2023-04-26 10:29:27 +02:00
Bart De Vries cee5ed71fa Small refactorings to prepare for qt6 2023-04-26 10:24:15 +02:00
Bart De Vries e20509f621 Fix kf6 globaldrawer loading issue 2023-04-25 22:10:06 +02:00
Bart De Vries ef627c047e Remove custom contextDrawer which is no longer used 2023-04-25 14:34:01 +02:00
Bart De Vries 27f4d6145b Prepare for KF6 change in Page actions 2023-04-25 12:58:31 +02:00
Bart De Vries ba1cefd5fc Use breeze style on android
The font issues should be solved in qqc2-breeze-style 5.27.4, which is
now used by binary factory.
2023-04-25 12:10:10 +02:00
Bart De Vries 5026b25352 Revert back to MenuItem
Up to now, RadioButton and CheckButton were added to Menus explicitly
because MenuItem would not use the correct delegate (i.e. CheckButton
instead of RadioButton for a selection group).  Since this has been
fixed in qqc2-desktop-style, we can use the proper component again.
2023-04-25 10:51:32 +02:00
Bart De Vries 8a9dc0f22f Also delete partially downloaded played episodes on startup
Previously only fully downloaded episodes that had been played
were deleted on startup.
2023-04-24 14:19:43 +02:00
Bart De Vries 8e04263469 Add missing icons for Android 2023-03-23 19:01:22 +01:00
Bart De Vries db234722cb Add implementation for favorites
BUG: 459886
2023-03-23 15:45:06 +00:00
Bart De Vries 4d41fc96a3 Fix member array of model not being cleared on refresh 2023-03-21 19:56:32 +01:00
Bart De Vries 97e66aa587 Replace i18n by i18nc in EntryPage 2023-03-21 16:18:25 +01:00
Bart De Vries 0bfd0b919e Make Kasts use the system proxy settings
BUG: 467490
2023-03-19 08:53:57 +00:00
Bart De Vries 3935987705 Re-enable Material style on Android
Breeze style seems to have significant font issues on some Android
devices.
2023-03-16 21:02:33 +01:00
Bart De Vries 02179c72be Add missing document-save icon to android build 2023-03-16 13:40:56 +01:00
Bart De Vries ffbc064908 Re-enable glyph cache workaround for android 2023-03-16 13:40:56 +01:00