Commit graph

10 commits

Author SHA1 Message Date
Joshua Strobl
44e4564f1c Implement mutli-Library support.
Honestly, not going to bother summarizing this massive changeset. You are welcome to look it over in your own free time.

Fixes #10. Fixes #11
2021-06-22 16:48:13 +03:00
Joshua Strobl
bfe4891620 Start cleanup of KotoLibrary logic and decoupling other components like Music Local from a specific library.
Fix the displaying of discs and tracks in an album on initial index due to missing cartographer add track call.

Cleanup lots of double empty newlines. Updated ptr spacing in uncrustify config to enforce consistency in pointer char (`*`) spacing.
2021-05-27 17:02:19 +03:00
Joshua Strobl
9f0e8dfbc8 Rename all KotoIndexed* to Koto*, KOTO_INDEXED_ to KOTO_, etc. Fixes #9. 2021-05-11 20:08:39 +03:00
Joshua Strobl
62de9c2032 Get to the point where we are fairly happy with our uncrustify config. Fixes #6. 2021-05-11 20:05:04 +03:00
Joshua Strobl
b4ffba62c7 Implement koto_utils_is_valid_string to replace repetitive NULL and g_strcmp0 code.
Reduce usage of g_return_if_fail since it results in unnecessary warnings.
2021-05-07 21:57:21 +03:00
Joshua Strobl
0e2244ba90 Implement Playlist functionality. My god...
Too many changes to summarize.

- Fixes #2.
- Fixes #3.
- Fixes #5.
- Fixes #7.

Start work on uncrustify config.
2021-05-07 16:47:47 +03:00
Joshua Strobl
05d90afc58 Implement start of Playback Engine, refactored most classes to leverage KotoCartographer, etc. 2021-03-23 19:50:09 +02:00
Joshua Strobl
35762ca233 Implemented clearer database functions and response codes so we know when to do library indexing.
Implement reading of artists, albums, and tracks. Fixed a bug related to unnecessary file name parsing. Fix SIGSEGV related to file name parsing and koto_utils_get_filename_without_extension.

Implemented an unquote string function for use when reading database entries. Try to fix some weird random rendering issues. Changed where we are doing some KotoPageMusicLocal widget construction.
2021-03-09 11:45:44 +02:00
Joshua Strobl
7566fb39f9 Consolidate indexer struct header definitions, implement artist, album, and file inserts.
Tweaked database schema. Ensure we enable FOREIGN KEYS.

Refactored how and when we are doing cover art and track fetching for an album.
2021-03-02 19:12:12 +02:00
Joshua Strobl
304c7635da Implemented ID3 tag parsing in our KotoIndexedFile leveraging taglib, refactored our mimetype code.
Implemented KotoIndexedArtist as well as KotoIndexedAlbum, including moving the file indexing capabilities into the KotoIndexedAlbum (subject to change).

Added g_debug messages instead of using g_message for debug purposes. Re-introduced Koto Utils with new koto_utils_get_filename_without_extension, since that is used to get the extensionless file name across both album fetching and base file name fetching.
2021-02-16 17:15:10 +02:00