summaryrefslogtreecommitdiff
path: root/gnomemusic/songliststore.py
Commit message (Collapse)AuthorAge
* utils: Move SortListModel PyGI wrapper hereMarinus Schraal2020-03-01
|
* Use natural order to sort album, artists and song namesJean Felder2020-01-06
| | | | | | | | | | | | | | | | A natural order is an alphabetical order which takes into account digit numbers. For example, the list ["Album 10", "Album 3"] should be sorted ["Album 3", "Album 10"] in an natural order. This can happen for compilation albums. There can be naming schemes like: Album, Album 2, Album 3,..., Album 10. This issue is fixed by replacing the alphabetical sort function of the main models by a natural sort function. This new sort function splits the names by the occurences of a digit. The digits are then replaced by an integer which allows to make a direct list comparison. Closes: #22
* Use normalized strings to sort album, artists and songs namesJean Felder2020-01-06
| | | | | | | | | | | | | | | | If an album, artist or song name contains an accent, it won't be sorted correctly in somes cases. For example, if an album is named "Éléor", it will be visible at the end of the AlbumsView while it would make more sense to insert it before an album starting with the letter "f". The main issue is that direct string comparisons do not handle well string which contains accents. Instead a caseless comparison needs to be done: the strings need to be normalized before the comparison. This issue is fixed by introducing a new sort function named sort_names which normalizes the string. This sort function is set for all the relevant models.
* songliststore: Add copyright and license informationJean Felder2019-11-26
|
* songliststore: Fix incorrect liststore additionMarinus Schraal2019-11-22
| | | | | | | | | Adding more than one item at a time resulted in the same item being added multiple times. This was not noticed because all the additions were single adds at a time. With batch additions however this becomes an obvious bug. Correct adding multiple items at a time to SongListStore.
* songliststore: Add missing docstringsJean Felder2019-11-22
|
* songliststore: Listen to the correct signal for validationJean Felder2019-07-16
| | | | | The property associated with the song validation is validation and not state.
* Complete rewrite of the core of MusicMarinus Schraal2019-07-16
Use persistent list models throughout Music to hold the state of a users music collected through Grilo and Tracker. The extent of the rework did not allow for a gradual approach, so this commit marks a hard break from the old approach. It is not yet on-par with the old codebase. This rework is partially based on the work of Jean Felder <jfelder@src.gnome.org>. Related: #299.