Commit Graph

21 Commits

Author SHA1 Message Date
c6f8a48b0d rind: add an up / down toggle button
I'm going to use this to show and hide the text entries for playlist
filtering and autopause controls.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-31 14:18:14 -04:00
ace07b74eb rind: More UI refinements
- Change top left controls into a buttonbox
- Change new library button to list-add-symbolic
- Remove "can focus" from buttons
- Make play / pause / next / previous buttons pill-shaped and
homogeneous

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-31 11:07:53 -04:00
d69661ef3b rind: Give the new library button the "osd" style class
This style class is for on-screen-display widgets, which lines up with
how we're using this button.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-31 09:36:19 -04:00
215ebb8653 rind: Add volume button
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-30 17:26:02 -04:00
ff3b9c4b5a rind: Add a New Libray button
Clicking the button shows a popover with a file chooser widget, which
can be used to select a library path.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-30 17:25:25 -04:00
b03877129d rind: Make play / pause / next / previous buttons circular
I think this looks a little nicer. While I'm at it, I also shove all the
headerbar widgets into two boxes packed on either side.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-30 09:25:06 -04:00
9633e20de5 rind: Set fixed-height-mode on the playlist treeview
Now that we push row_added notifications into the main thread, we can
enable this optimization that makes the treeview more efficient.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-27 11:20:13 -04:00
16b5e1e990 rind: Add previous button and playlist to the UI
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-24 17:32:16 -04:00
e4755aae6d rind: Remove shadows from scrolled windows
And change the GtkPaned widget to have a small handle. This sets the
division between the playlist manager and the playlist to a single line,
which I think looks really slick

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-21 15:37:37 -04:00
e403fd6ba9 rind: Show the fill level when tracks are loaded
This is a small detail, but I like the idea of having an indicator when
tracks are loaded or not.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-21 14:22:14 -04:00
c447c9e2b7 rind: Clean up the gstreamer tests
The common setup and tear down code helps keep everything in sync.
Additionally, we no longer need to wait for duration changes, which have
always been unreliable.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-21 13:35:25 -04:00
a48a2ada76 rind: Set Title and Artist from gstreamer tags
This helps us prepare for the about-to-finish signal by setting this
information when gstreamer starts playing the next track.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-21 13:11:58 -04:00
a9f48534e5 rind: Add seek support
I put a smaller progress bar into the header area that users can use for
seeking or checking the current position. I also add two labels to show
time played and time remaining in the current track.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-21 09:52:39 -04:00
5885228fd1 rind: Add a random button
We use this to toggle the random property of playlists

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-20 10:45:28 -04:00
72a947621c rind: Replace window title and subtitle with a custom widget
This lets me control size and justification of the text. Additionally, I
put everything into a scrolled window just in case a track has a really
long title name.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-20 09:58:23 -04:00
c636b3fd5e rind: More icon and spacing changes
I switch around the sidebar icons again, and also make the header bar
icons larger to make them easier to press with touchscreens

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-20 09:58:06 -04:00
60da00adf8 rind: Add play, pause, and next buttons
And also change the window title and subtitle when loading a new track

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-19 12:17:58 -04:00
57b642265c rind: Add library playlists to the playlist manager
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-17 11:15:04 -04:00
a983947200 rind: Add another treeview for a playlist selector
Right now it just supports one level of playlists, but others will be
implemented as we go on.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-16 09:17:18 -04:00
31d7ae26fa rind: Implement the PlaylistModel
This is a special tree model that translates our Playlist object into a
format that GTK understands.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-15 08:40:25 -04:00
d42492ced5 rind: Add gtk Application and Builder
I also add a basic UI file that contains the main window. I'll add on to
the gui from here.

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
2019-03-13 15:48:35 -04:00