Implement a music listener for local files with Qt APIs
Closed, ResolvedPublic

Description

Implement a music listener for local files with Qt APIs such that one can found local music when Baloo is not usable (i.e. Windows, Android)
Fix all issues with dynamic refresh on changes.

Details

Commits
R255:dc116b8fab3a: inmprove automatic test of DatabaseInterface::removeTracksList + clean-up
R255:7732b069421e: avoid crashing when no extractors are found + debug print
R255:5278cba2be11: fix some debug prints in case of database errors
R255:79da32562250: DatabaseInterface and AllAlbumsModel: test the addition of tracks and albums
R255:e89a332928af: use more standard data types for text columns and fix creation order for tables
R255:9d4e2e3c3559: remove support for filtering the list of albums in database
R255:57445aa863c7: makes the enum ColumnRoles visible to Qt meta object (usefull for qml)
R255:f16f5a445a89: add a test for track modification in DatabaseInterface
R255:e8df3bb048e2: removal of some tracks from an album works with update of the all album view
R255:005445ee9cd4: remove some obsolete method in DatabaseInterface
R255:2e2adbcfc676: avoid a crash in DatabaseInterface when inserting empty albums
R255:b2a9e60061f6: fix an error in wrong debug message after database error
R255:94253e3f788e: update tracks inside album view when they are updated
R255:fbfd9db25062: allow tracks in play list to be updated when they are added or removed
R255:04a75971bf7c: push new tracks, albums or artists in one transcation to speed up the inserts
R255:142a3fef2089: rename DatabaseInterface::albumFromTitleAndAuthor to albumFromTitle
R255:0ca1cfcecde4: test AlbumModel and fix refresh from DatabaseInterface when tracks list change
R255:885572e70324: test artist addition and removal in AllArtistsModel
R255:6031b0ef6fc6: rename thread in MusicListenersManager: it contains the database
R255:be90c8a053cf: automatic tests of DatabaseInterafce have invalid data: add a comment
R255:a7a806d778e4: rename a variable witn unintuitive name in LocalFileListing
R255:2e9ced157414: when removing tracks, remove also the albums
R255:610f967892ff: improve error message when database is in error
R255:18b2ac8e2060: when removing tasks, check if albums or artists need to be removed
R255:1d7aa605f174: when local files change, refresh their data and update their album
R255:c509c6398ea8: test of DatabaseInterface when a new artist is added
R255:fcb18ef82d40: search for local music in the standard music path
R255:32e88e08ef23: add automatic tests to LocalFileListing and fix problems

Related Objects

mgallien created this task.Jan 26 2017, 3:25 PM
mgallien moved this task from Backlog to In Progress on the Elisa board.
mgallien moved this task from In Progress to Done on the Elisa board.Feb 2 2017, 2:58 PM
mgallien moved this task from Done to In Progress on the Elisa board.
mgallien updated the task description. (Show Details)
mgallien raised the priority of this task from Normal to High.
mgallien added commits: R255:32e88e08ef23: add automatic tests to LocalFileListing and fix problems, R255:fcb18ef82d40: search for local music in the standard music path, R255:c509c6398ea8: test of DatabaseInterface when a new artist is added, R255:1d7aa605f174: when local files change, refresh their data and update their album, R255:18b2ac8e2060: when removing tasks, check if albums or artists need to be removed, R255:610f967892ff: improve error message when database is in error, R255:2e9ced157414: when removing tracks, remove also the albums, R255:a7a806d778e4: rename a variable witn unintuitive name in LocalFileListing, R255:be90c8a053cf: automatic tests of DatabaseInterafce have invalid data: add a comment, R255:6031b0ef6fc6: rename thread in MusicListenersManager: it contains the database, R255:885572e70324: test artist addition and removal in AllArtistsModel, R255:0ca1cfcecde4: test AlbumModel and fix refresh from DatabaseInterface when tracks list change, R255:142a3fef2089: rename DatabaseInterface::albumFromTitleAndAuthor to albumFromTitle, R255:04a75971bf7c: push new tracks, albums or artists in one transcation to speed up the inserts, R255:fbfd9db25062: allow tracks in play list to be updated when they are added or removed, R255:94253e3f788e: update tracks inside album view when they are updated, R255:b2a9e60061f6: fix an error in wrong debug message after database error, R255:2e2adbcfc676: avoid a crash in DatabaseInterface when inserting empty albums, R255:005445ee9cd4: remove some obsolete method in DatabaseInterface, R255:e8df3bb048e2: removal of some tracks from an album works with update of the all album view, R255:f16f5a445a89: add a test for track modification in DatabaseInterface, R255:57445aa863c7: makes the enum ColumnRoles visible to Qt meta object (usefull for qml), R255:9d4e2e3c3559: remove support for filtering the list of albums in database, R255:e89a332928af: use more standard data types for text columns and fix creation order for tables, R255:79da32562250: DatabaseInterface and AllAlbumsModel: test the addition of tracks and albums, R255:5278cba2be11: fix some debug prints in case of database errors, R255:7732b069421e: avoid crashing when no extractors are found + debug print, R255:dc116b8fab3a: inmprove automatic test of DatabaseInterface::removeTracksList + clean-up.Feb 15 2017, 10:17 PM
mgallien moved this task from In Progress to Done on the Elisa board.Feb 16 2017, 3:25 PM
mgallien closed this task as Resolved.Feb 16 2017, 10:00 PM