Anna Schumaker
a3ec223064
Emmental 2.2
...
No real user-facing changes in this release, but I do lay some
groundwork for switching over to sqlite for our data storage.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-24 15:01:26 -04:00
Anna Schumaker
e94346fdd9
db: Give Playlists a PlaylistState property
...
And clean up how the default playlists are created so the test doesn't
fall over with the new column.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:48:20 -04:00
Anna Schumaker
8a0364760d
db: Give Years a PlaylistState property
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:18:30 -04:00
Anna Schumaker
6fbc5e0b27
db: Give Libraries a PlaylistState property
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:18:29 -04:00
Anna Schumaker
c168fcbda3
db: Give Genres a PlaylistState property
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:18:29 -04:00
Anna Schumaker
77c2b7cd81
db: Give Discs a PlaylistState property
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:18:28 -04:00
Anna Schumaker
9a6cda7aab
db: Give Decades a PlaylistState property
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:18:28 -04:00
Anna Schumaker
e9a2a6f06a
db: Give Artists a PlaylistState property
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:18:27 -04:00
Anna Schumaker
3abf2d3cf7
db: Give Albums a PlaylistState property
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:18:25 -04:00
Anna Schumaker
38861bbabf
db: Create a PlaylistStateTable and PlaylistState object
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:18:24 -04:00
Anna Schumaker
952d70c282
db: Have Tracks remove themselves from Playlist Maps when deleted
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:17:46 -04:00
Anna Schumaker
0fd1069484
db: Add a PlaylistMap
...
And create both permanent and temporary maps for tracks. The temporary
map is intended to be used for the New Tracks and Previous playlists,
since we don't store the state across restarts.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:17:45 -04:00
Anna Schumaker
2b87707f16
db: Create a PlaylistTable and Playlist object
...
And populate the table with some default playlist values.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:17:17 -04:00
Anna Schumaker
69f5742867
db: Have Tracks remove themselves from the GenreMap when deleted
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:16:51 -04:00
Anna Schumaker
5746b2a81f
db: Add a GenreMap
...
For mapping tracks into a list of genres, or a genre into a list of
tracks.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:16:50 -04:00
Anna Schumaker
986ef5bc74
db: Add a Map object
...
For creating a table that maps one value into another
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:15:47 -04:00
Anna Schumaker
5a52bdc546
db: Give Libraries a way to list their Tracks
...
And make sure the tracks are deleted when a Library is deleted.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:15:45 -04:00
Anna Schumaker
ea555a428c
db: Create a TrackTable and Track object
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:15:44 -04:00
Anna Schumaker
f519830095
db: Create a LibraryTable and Library object
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:15:20 -04:00
Anna Schumaker
63e2e6473d
db: Add a function so Decades can list their Years
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:14:58 -04:00
Anna Schumaker
2af61f8787
db: Create a YearTable and Year object
...
I do lookups and inserts based only on the year field. Decades are
created automatically on insert.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:14:56 -04:00
Anna Schumaker
cc65db6d79
db: Create a DecadeTable and Decade object
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:14:31 -04:00
Anna Schumaker
feca3c7a19
db: Create a GenreTable and Genre object
...
I'll eventually need to add a mapping between tracks and their genre
list, but I still need to build up to having Track objects first
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:14:09 -04:00
Anna Schumaker
00e15c8422
db: Add a function so Albums can list their Discs
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:13:49 -04:00
Anna Schumaker
bbb248f665
db: Create a DiscTable and Disc object
...
To represent each disc of an album. Discs may have different subtitles
that we want to display (or there may not be a subtitle at all). Casting
a Disc to a string either appends the subtitle to the album name or
returns the album name directly. This is intended to be used by the
ColumnView to display album names
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:13:48 -04:00
Anna Schumaker
94f08dcd06
db: Give Artists a function for listing their Albums
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:13:25 -04:00
Anna Schumaker
6a1713630b
db: Create an AlbumTable and Album tag
...
Similar to Artists, only holding information about each album instead.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:13:24 -04:00
Anna Schumaker
2d125546dd
db: Add an ArtistTable and Artist tag
...
Also create an index on artist name in the sqlite table for faster
lookups.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:12:56 -04:00
Anna Schumaker
3753b0ad60
db: Add a Tag object
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:12:02 -04:00
Anna Schumaker
2f8e71fff7
db: Add objects for Tables and Rows
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-23 13:12:00 -04:00
Anna Schumaker
2822a9ac35
db: Add initial SQL connection object
...
And set the row_factory to use the built-in sqlite3.Row so we can access
columns by name in search results
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-22 07:33:43 -04:00
Anna Schumaker
2e6c8a17e3
Emmental 2.1 AUR commit
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-17 09:28:33 -04:00
Anna Schumaker
1edc776370
Emmental 2.1
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-17 09:21:32 -04:00
Anna Schumaker
b0a1ab5796
keyboard: Add initial keyboard shortcuts
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-02 10:25:11 -04:00
Anna Schumaker
e24999bb2f
audio: Give the Player a playpause() function
...
This makes it easy for others to pause if playing, or play if paused
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-08-02 10:25:00 -04:00
Anna Schumaker
f55ecf0472
sidebar: Switch over to using the emmental-favorites icon
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-31 19:18:28 -04:00
Anna Schumaker
f13983269b
playlist: Switch over to using the emmental-favorites icon
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-31 19:18:17 -04:00
Anna Schumaker
692ca1ff5d
data: Add a custom icon for Favorites
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-31 19:17:15 -04:00
Anna Schumaker
d3c66d7c31
playlist: Add a button for scrolling to the current track
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-31 13:15:49 -04:00
Anna Schumaker
1d45ce9beb
playlist: Use the ColumnView's vadjustment for scrolling
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-31 13:15:49 -04:00
Anna Schumaker
029b432dd3
audio: Check that artwork has a default path
...
Instead of checking the path itself. I found that the test fails if
Emmental is installed, since it's finding the artwork in
/usr/share/icons before our local path.
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-31 13:15:49 -04:00
Anna Schumaker
3d78dcd4d0
Create a PKGBUILD for putting releases on the AUR
...
And add the aur directory as a submodule so we can update files directly
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-28 11:17:32 -04:00
Anna Schumaker
b0838beb6f
Create install and uninstall targets in the Makefile
...
And create helper scripts under tools/
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 17:52:13 -04:00
Anna Schumaker
66e1ba8b44
Rename the debug file to .debug
...
And check for existance before reading
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 14:29:40 -04:00
Anna Schumaker
f78402f258
Rename trackdb -> tagdb
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 11:15:15 -04:00
Anna Schumaker
7a41c3b1a1
Move module tests out of the toplevel directory
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 11:03:32 -04:00
Anna Schumaker
e8f9427750
Move testing tracks into data/
...
And the generate_tracks.py script into tools/
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 10:57:01 -04:00
Anna Schumaker
d985c53c5c
Rename emmental-gtk4.py -> emmental.py
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 10:29:21 -04:00
Anna Schumaker
81be915b09
lib: Remove old idle.py code
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 10:26:29 -04:00
Anna Schumaker
e5970fe47a
Remove old emmental.ui file
...
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2021-07-26 10:25:34 -04:00