29 Commits

Author SHA1 Message Date
Tobias Fella
eb74c913a9 Simplify author handling
- Don't make them QObjects; those are heavy and there's no reason for that
- In fact, don't make them objects at all; we're only using them in string form anyway
2024-01-11 21:52:10 +01:00
Tobias Fella
fe6626ebeb Remove some empty descructors 2024-01-11 21:52:10 +01:00
Bart De Vries
db234722cb Add implementation for favorites
BUG: 459886
2023-03-23 15:45:06 +00:00
Tobias Fella
8207b6af08 Update Tobias' mail address 2023-02-27 19:18:46 +01:00
Bart De Vries
787b373339 Use pragma once everywhere 2023-01-04 10:27:22 +01:00
Bart De Vries
aac899a7f0 Refactor feed update routine to allow for entry, enclosure, authors and chapter updates
This commit adds a bunch of API extensions (public and private) to the
entry, enclosure, etc classes to allow runtime updates of internal data.
Additionally, the feed update routine has been adapted to find updates
in entries, enclosures, etc and pass them on to the relevant objects.

All of this functionality is put behind a new toggle exposed in the
settings (default is on).  This is useful since a full update takes
quite a bit longer on underpowered hardware, so users should be able to
switch off this potentially non-essential overhead.

BUG: 446158
2022-05-31 16:11:50 +02:00
Nicolas Fella
6df9188cdc Use include instead of forward decl for property types 2022-05-02 10:24:12 +00:00
Bart De Vries
748c9e3116 Fix compiler warnings 2021-10-03 20:49:42 +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
49977adc38 Refactor Error implementation and add Error::Type
- This refactoring also includes a cleanup of a lot of header includes to
  avoid circular dependencies.
- The error message will now be shown below the info message.
- Add database migration (for Errors)
2021-06-19 17:09:44 +02:00
Bart De Vries
d1618943f5 Update based on review by Tobias Fella 2021-05-01 21:09:07 +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
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
5d6f05e55e Update copyright headers 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
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
bb7f3393a7 Enable entry images in listviews/listmodels 2021-04-21 14:53:02 +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
13868709e7 A lot of progress on refactoring with DataManager 2021-04-21 14:52:33 +02:00
Tobias Fella
e5837425d3
Support podcasts 2021-03-22 23:33:44 +01:00
Tobias Fella
db30f159c4 Convert license headers to SPDX 2020-08-14 20:57:40 +02:00
Tobias Fella
2c4effe372 Improve image width rendering by limiting the image width to the label's width 2020-07-01 19:37:22 +02:00
Tobias Fella
a14a4c325e Refactor Entry loading 2020-06-10 00:07:08 +02:00
Tobias Fella
a5a449c08b Implement FeedDetailsPage 2020-06-06 00:05:46 +02:00
Tobias Fella
8269cb960f Refactor models 2020-05-26 16:32:32 +02:00
Tobias Fella
eb8d24e28a port models to QSqlTableModel 2020-04-18 21:07:49 +02:00
Tobias Fella
195b6d63ee
add timestamp, aboutpage, settingspage 2020-03-26 14:16:19 +01:00
Tobias Fella
73b986933f
add EntryPage 2020-03-04 14:00:27 +01:00
Tobias Fella
5ae34b56f7
Initial Commit 2020-02-28 23:25:08 +01:00