Commit Graph

356 Commits

Author SHA1 Message Date
Jonas Kvinge b0966f14e6 Only connect ClearPixmapDiskCache if app is set 2020-05-16 18:25:13 +02:00
Jonas Kvinge 2bcad9b637 Do AddOrUpdateSongs in database thread 2020-05-12 18:45:24 +02:00
Jonas Kvinge 54cce5e089 Use album grouping function 2020-05-06 22:35:55 +02:00
Jonas Kvinge 4e4e596a1e Change some parameters to const 2020-05-06 22:26:29 +02:00
Jonas Kvinge 727a1f5ad1 Sort songs in collection by song title instead of track if previous
grouping is not the album.

Fixes #295
2020-05-06 22:14:59 +02:00
Jonas Kvinge a835a4a2f7 Minor fixes to collection pixmap cache
- Add variables for cache size defaults
- Increase default disk cache size
- Change the pixmap cache settings UI to look better
- Add current pixmap disk cache used to settings
2020-04-29 00:33:38 +02:00
Jonas Kvinge 8da4c88fd3 Fix compile warnings 2020-04-23 21:08:28 +02:00
Jonas Kvinge a2c0e4d4b1 Improve album cover loader, lyrics search and streaming support
- Improve album cover loader
- Add album cover loader result struct
- Move album cover thumbnail scaling to album cover loader
- Make init art manual look for album cover images in song directory
- Make album cover search work for songs outside of collection and
  streams
- Make album cover search work based on artist + title if album is not
  present
- Update art manual in playlist for local files, devices and CDDA
- Make lyrics search work for streams
- Add stream dialog to menu
- Remove dead code in InternetSearchModel
- Simplify code in InternetSearchView
2020-04-20 18:03:18 +02:00
Jonas Kvinge c69fff52cc Remove useless using std 2020-04-20 17:49:06 +02:00
Jonas Kvinge aa43d42cdb Remove const from signal slot connects 2020-04-13 05:57:48 +02:00
Jonas Kvinge be8228e33c Fix song_id check 2020-04-13 04:17:45 +02:00
Jonas Kvinge 5591472dbd Change artist and song ID to strings 2020-04-13 03:39:51 +02:00
Jonas Kvinge 21b2193cd0 Add explicit 2020-04-07 16:49:15 +02:00
Jonas Kvinge 307961cc7e Center organise and transcoder dialog on same screen as mainwindow 2020-04-07 01:26:17 +02:00
Jonas Kvinge 424b0e61cb Remove extra newlines 2020-02-12 00:07:05 +01:00
Jonas Kvinge 84cd65dd6c Reduce includes 2020-02-08 15:03:11 +01:00
Jonas Kvinge 8e0d792bf0 Reduce includes 2020-02-08 03:40:30 +01:00
Gavin D. Howard 691f5d99ca
Implement disk caching of album art (#360)
* Implement disk caching of album art

This includes a button to clear the cache in the settings, as
requested.

Closes #358

* Make the cache size defaults match

* Implement the review by jonaski

* Fix more problems with the PR
2020-02-07 23:18:18 +01:00
Jonas Kvinge fc2d601424 Remove useless stdbool.h include 2019-12-30 23:14:40 +01:00
Jonas Kvinge 8818f24114 Fix compile with Qt 5.14 and above 2019-12-30 02:28:54 +01:00
Jonas Kvinge 9b688a5179 Remove HTML from translations
Fixes #260
2019-12-29 23:37:48 +01:00
Jonas Kvinge be9bf5c173 Replace use of QSet::fromList with Qt 5.14 and above 2019-12-21 18:22:18 +01:00
Jonas Kvinge 6df38c389c Replace use of QSet::toList() with QSet::values() 2019-12-21 18:19:09 +01:00
Jonas Kvinge 63b781765a Update copyrights 2019-11-26 22:30:14 +01:00
Jonas Kvinge 722a088515 Only remove pixmap cache when removing parents in collection model 2019-11-26 19:42:05 +01:00
Jonas Kvinge a4ebd91e8d Make sure QSqlQuery::exec() was successful 2019-11-25 22:43:09 +01:00
Jonas Kvinge 47c13a840e Handle different urls in collection backend for backward compatibility 2019-11-25 22:29:12 +01:00
Jonas Kvinge 36331dc253 Fix removing nodes from pending art 2019-11-25 22:25:29 +01:00
Jonas Kvinge 337e47269f Remove portable, we dont use it 2019-11-25 00:35:48 +01:00
Jonas Kvinge bf35665932 Update all songs for the same directory+album when updating compilations
- Fixes a bug where the songs are stuck in various artists, because the
album has child songs, it will be stuck with various artists as the
parent node.
2019-11-25 00:28:49 +01:00
Jonas Kvinge 9375d9699a No 2019-11-19 21:51:15 +01:00
Jonas Kvinge cf0442d5b8 Fix setting pixmap cache limit 2019-11-19 21:49:46 +01:00
Jonas Kvinge e0fed07b10 Change pixmap cache limit 2019-11-19 21:03:06 +01:00
Jonas Kvinge 779d5ff7b6 Dont reset pixmap cache on model reset 2019-11-19 20:56:03 +01:00
Jonas Kvinge 1862e70628 Declare song using source 2019-11-14 00:09:35 +01:00
Jonas Kvinge c4f7054ca6 Use QUrl::FullyEncoded in update compilations 2019-11-13 23:51:04 +01:00
Jonas Kvinge 175e568a28 Minor improvements to update compilations 2019-11-13 21:27:04 +01:00
Jonas Kvinge c8d580e7de No need to delete pixmap cache when deleting empty parents 2019-11-13 21:16:48 +01:00
Jonas Kvinge bc0c50ee65 Remove commented code 2019-11-13 21:12:50 +01:00
Jonas Kvinge 6387a01d7b Fix updating compilations
Fixes #288
2019-11-03 23:23:04 +01:00
Jonas Kvinge 7c9fc91af9 Enable system theme icons, add iconmapper and rename some icon names 2019-10-20 00:17:28 +02:00
Jonas Kvinge 76b4a6585e Update copyrights 2019-09-23 19:17:41 +02:00
Jonas Kvinge bdc089290d Add fallthrough comments and remove -Wimplicit-fallthrough=0
Signed-off-by: Jonas Kvinge <jonas@jkvinge.net>
2019-09-16 21:20:12 +02:00
Jonas Kvinge 2d67279180 Fix minor code issues 2019-09-15 20:27:32 +02:00
Jonas Kvinge 8962644ba8 Improvements to device manager
- Mount and unmount devices in lister thread
- Safely close watcher and backends for devices
- Enable abort loading device
- Fix MTP connection
2019-09-07 23:30:35 +02:00
Jonas Kvinge 42e7f64856 Make marking songs unavailable optional 2019-08-11 22:30:28 +02:00
Jonas Kvinge e8af3e8d3c Simplify if statement 2019-08-05 23:03:40 +02:00
Jonas Kvinge cd05b10168 Remove extra debugging 2019-08-05 23:03:04 +02:00
Jonas Kvinge 140935bd8c Add album - disc grouping 2019-08-05 19:17:31 +02:00
Jonas Kvinge ecb122d93c Make collection watcher unwatch removed directories
Fixes #233
2019-08-05 18:40:47 +02:00
Jonas Kvinge 7b13c0d059 Fix watching new subdirs in collection watcher 2019-08-02 23:58:47 +02:00
Jonas Kvinge 8a0e66bf11
Switch to FTS5 with unicode61 (#229)
* Switch to FTS5 with unicode61

* Update required sqlite version in README

* Update README

* Change back db file
2019-07-30 22:45:22 +02:00
Jonas Kvinge 87e543b5ef Fix collection query 2019-07-26 19:14:15 +02:00
Jonas Kvinge 81caec99b7 Fix closing databases 2019-07-25 17:56:28 +02:00
Jonas Kvinge 41484f8673 Fix exit 2019-07-24 23:29:09 +02:00
Jonas Kvinge b5eb13449b Safely close database connections and delete backends
Also fix NewClosure leak caused by disconnected object signals
2019-07-24 19:16:51 +02:00
Jonas Kvinge bd78e8c275 Fix memory leaks 2019-07-22 20:53:05 +02:00
Jonas Kvinge 2df21081a1 Fix pixmap cache in collection model
- Properly remove both from pixmap cache, pending art and pending cache keys when songs are deleted
- Increase default pixmap cache
- Clear pixmap cache when model is reset
2019-07-22 19:57:53 +02:00
Jonas Kvinge 8ebcb71e6e Replace all uses of QSignalMapper with lambda expressions 2019-07-08 22:27:45 +02:00
Jonas Kvinge 51462dee1e Use QUrl::fromEncoded 2019-07-08 22:10:43 +02:00
Jonas Kvinge 65780e1672 Improve album cover searching and cover manager, use HttpStatusCodeAttribute and QSslError for services
- Improve album cover manager
- Change art_automatic and art_manual to QUrl
- Refresh collection album covers when new album covers are fetched
- Fix automatic album cover searching for local files outside of the collection
- Make all Json services check HttpStatusCodeAttribute
- Show detailed SSL errors for Subsonic, Tidal and Qobuz
2019-07-07 21:14:24 +02:00
Gavin D. Howard 5cde33711e Make playlist ignore articles when sorting (#202)
This is more correct, and the other way is driving me crazy.
2019-07-05 00:13:51 +02:00
Jonas Kvinge ba314dd734 Set source in backends to fix losing source in InitFromFilePartial()
when updating path
2019-07-02 00:48:40 +02:00
Jonas Kvinge 9083c578cc
Add live scanning (#199) 2019-06-30 21:06:07 +02:00
Jonas Kvinge 60bd90848b
Add tests (#193) 2019-06-28 01:33:22 +02:00
Jonas Kvinge 647e7e708a Add confirmation box for opening songs in file browser 2019-06-20 17:00:10 +02:00
Jonas Kvinge 9d222e2c57
Rename filename to url, change album_id to string and recreate songs tables (#182) 2019-06-20 02:14:44 +02:00
Jonas Kvinge a070681f89 Move to private 2019-06-08 12:03:48 +02:00
Jonas Kvinge d5e424eec8 Fix save/restore group by for internet collection 2019-06-08 00:15:54 +02:00
Jonas Kvinge cbf1d96b16 Avoid duplicate songs in the collection backend 2019-06-07 23:02:43 +02:00
Jonas Kvinge 7cc0d6bb5a Fix ItemFromSong() missing album id 2019-06-07 22:54:34 +02:00
Jonas Kvinge 2b7d48ce77 Distinguish albums with same name with album_id 2019-05-30 18:05:07 +02:00
Jonas Kvinge 890fba0f61
Add internet tabs view and tidal favorites (#167) 2019-05-27 21:10:37 +02:00
Jonas Kvinge 69eeb4b0f8 Move QSearchField to widgets and remove rest of qocoa 2019-05-08 23:34:44 +02:00
Jonas Kvinge 40db9f7020 Fix updating play and skip count 2019-04-19 14:02:28 +02:00
Jonas Kvinge 37b923bea3 Change query to find both albums by artist and album artist 2019-04-18 00:45:32 +02:00
Jonas Kvinge 77903a5ecd Improve handling of song source 2019-04-08 23:00:07 +02:00
Jonas Kvinge 9be161d165 Fix code style and errors 2019-04-08 18:46:11 +02:00
Jonas Kvinge 7da79dabdf Add group by format 2019-03-30 22:03:33 +01:00
Jonas Kvinge 15c8f2a3ee Notify collection backend about renamed files when organising files 2019-03-25 00:53:12 +01:00
Jonas Kvinge 71969b88e3 Fix GetSongByUrl incorrectly using bytearray instead of string 2019-03-22 23:14:25 +01:00
Jonas Kvinge 87fd93a1cf Show error when editing tags fails, update DB immediately when successful 2019-02-20 21:27:53 +01:00
Jonas Kvinge bc37d00a81 Stop watcher when unmounting 2019-02-20 21:24:10 +01:00
Jonas Kvinge 7e9668584b Change default for collection to group by album artist 2019-01-06 17:26:05 +01:00
Jonas Kvinge ffd16e5401 Enable organise without gstreamer 2019-01-06 16:48:23 +01:00
Jonas Kvinge 2a54cb17e7 Move organise files, add option to strip all non-fat characters 2018-12-29 15:37:16 +01:00
Jonas Kvinge 23205bef65 Playlist fixes
- Fix bug resetting playlist view columns to show all when using more than one
playlist.
- Add queue to play next
2018-11-18 23:21:12 +01:00
Jonas Kvinge f15c85e807 Remove SetThreadIOPriority, fixes poor performance on macos 2018-11-17 03:25:42 +01:00
Jonas Kvinge 0cda4e27aa Replace qSort/qStableSort/qSwap 2018-10-19 20:18:46 +02:00
Jonas Kvinge 0a81fa99fc Add Deezer support 2018-10-14 00:08:33 +02:00
Jonas Kvinge db035351be Remove whitespaces 2018-10-02 00:38:52 +02:00
Jonas Kvinge 97ec12b5b3 Don't compile devices on windows 2018-09-20 17:36:23 +02:00
Jonas Kvinge 1a7465ba94 Formatting and remove unused icons 2018-09-14 23:05:58 +02:00
Jonas Kvinge 6d686ee66a Add source to songs and playlist_items 2018-09-08 12:38:02 +02:00
Jonas Kvinge ac6cac8da1 New context with albums and lyrics +++ much more
* Added new lyrics provider with lyrics from AudD and API Seeds
* New improved context widget with albums and lyrics
* Fixed playing and context widget getting stuck in play mode when there was an error
* Changed icons for artists in collection, tidal and cover manager
* Removed "search" icon from "Search automatically" checkbox (right click) that looked ugly
* Removed some unused widgets from the src/widgets directory
* Fixed initial size of window and side panel
* Fixed saving window size correctly
2018-08-29 21:42:24 +02:00
Jonas Kvinge 57f6f40e7d Fix missing icons and rework some UI stuff 2018-08-09 21:04:30 +02:00
Jonas Kvinge c518e42e18 Remove whitespace 2018-08-09 18:39:44 +02:00
Jonas Kvinge 820124f9e1 Add tidal support 2018-08-09 18:10:03 +02:00
Jonas Kvinge ada7325a04 Fix macos build 2018-07-01 22:26:46 +02:00
Jonas Kvinge 985b91e5f4 Fix setting output/device for Xine and VLC backend
- Fixed setting output and device on Xine and VLC backend
- Fixed track slider for Xine, VLC and Phonon
- Improved backend settings to better support multiple backends
- Added group by samplerate and bitdepth in collection
- Fixed crash on exit when existing instance of the application is already runnung caused by NVIDIA driver
- Changed Q_OS_MAC to Q_OS_MACOS
2018-06-28 01:15:32 +02:00
Jonas Kvinge e337b7933b Includes, comments and bugfixes
- Fix includes
- Use common regex (Song::kCoverRemoveDisc) for removing Disc/CD from album
- Remove Disc/CD from album when creating hash
- Make imobiledevice support compile
- Fix setting device on windows
2018-05-01 00:41:33 +02:00
Jonas Kvinge 6bbc1271e4 Fix cross build for windows. 2018-04-02 18:35:58 +02:00
Jonas Kvinge 16cabf33a2 Code cleanup. 2018-03-10 13:02:56 +01:00
Jonas Kvinge 7501e8b14d Remove Disc / CD from albumname when searching for covers. Dont use url if it's empty in LastFM. 2018-03-04 14:10:50 +01:00
Jonas Kvinge b7466b7fb1 Fix bug in albumcovermanager not updating album cover in DB. 2018-03-04 03:10:07 +01:00
Jonas Kvinge b2b1ba7abe Initial commit. 2018-02-27 18:06:05 +01:00