Commit Graph

92 Commits

Author SHA1 Message Date
Henrik
d30a9e156a Create LICENSE 2019-03-13 13:56:30 +01:00
Henrik Friedrichsen
e5073647cc Merge branch 'KoffeinFlummi-mpris' into develop 2019-03-12 18:04:41 +01:00
KoffeinFlummi
ea08608eec Refactor DBus server, implement PropertiesChanged 2019-03-12 16:40:21 +01:00
Henrik Friedrichsen
8291a91f8a we can retrieve up to 100 tracks from a list, crank the limit 2019-03-12 15:45:23 +01:00
Henrik Friedrichsen
c7ebe39453 add keybinding for previous track 2019-03-11 22:36:31 +01:00
Henrik Friedrichsen
778bf5f418 install libdbus-1-dev for mpris support 2019-03-11 22:26:52 +01:00
Henrik Friedrichsen
2042ab44d1 Merge branch 'KoffeinFlummi-mpris' into develop 2019-03-11 22:26:10 +01:00
Henrik Friedrichsen
ea8dc36020 handle tracks that don't have album art images 2019-03-11 22:25:10 +01:00
Henrik Friedrichsen
90dd26fa02 fix panic caused by strings that where cut outside of char boundary 2019-03-11 21:35:36 +01:00
KoffeinFlummi
9db8d0fcb3 Implement MPRIS D-Bus spec 2019-03-11 21:24:25 +01:00
Henrik Friedrichsen
cf31b2204a trigger redraw every 400ms while playing to keep statusbar in sync 2019-03-11 01:07:21 +01:00
Henrik Friedrichsen
805039032b trigger a redraw after screen change 2019-03-10 22:51:43 +01:00
Henrik Friedrichsen
13ef40254e Merge branch 'wip_event_redraw' into develop 2019-03-10 21:56:35 +01:00
Henrik
57893be64d Merge pull request #26 from andrewhalle/remove-log-file
turn off writing log to file
2019-03-10 21:37:57 +01:00
Henrik Friedrichsen
0c601a37a2 document new vim-style prompt 2019-03-10 21:34:56 +01:00
Henrik Friedrichsen
fa56b03133 attempt to reconstruct search term 2019-03-10 21:29:56 +01:00
Andrew Halle
d4c882768a turn off writing to file, but leave the file writing stuff for possible command line arguments later 2019-03-09 10:04:07 -08:00
KoffeinFlummi
fcf28183bc Add a vim-style command line 2019-03-09 15:04:02 +01:00
Henrik Friedrichsen
392e3efb87 turn off autorefresh and redraw only on demand
this should significantly reduce CPU usage but is a little bit more complicated.
while we're at it, remove the different screen redraw events and use a combined
event for all screens.

TODO:
the spotify player still needs to update the statusbar at least every second.
2019-03-09 01:55:55 +01:00
Henrik Friedrichsen
2bc87d8af5 make sure the title is set for the regular and chained method 2019-03-09 01:11:25 +01:00
Henrik Friedrichsen
2162a52544 use Cursive::noop 2019-03-09 00:32:48 +01:00
Henrik Friedrichsen
4776375f68 re-order screens 2019-03-08 10:58:25 +01:00
Henrik Friedrichsen
75fd57108e add 'clear playlist' keybinding 2019-03-08 00:23:03 +01:00
Henrik Friedrichsen
82f10fccde download playlist once at startup and keep it in memory 2019-03-08 00:13:45 +01:00
Henrik Friedrichsen
502ac36de3 get rid of the panel wrapper for more space
the screen title is now displayed by the layout
2019-03-07 22:34:45 +01:00
Henrik Friedrichsen
b075c96134 update current_track when tracks before the current one are removed
also:
don't use events to update the queue UI
this makes the Add/Remove queue events useless, but we'll keep them for now

hopefully fixes #22
2019-03-07 17:33:45 +01:00
Henrik Friedrichsen
41164df2be use pancurses-backend for cursive to support windows
closes #10
2019-03-07 13:24:29 +01:00
Henrik Friedrichsen
0b14fc5da7 transform simple queue to a preserving, more complex kind
this is a pretty big but necessary change and might not be stable yet.

some key points:
- the queue is now responsible for playback controls and track management, as
this was scattered between the queue and spotify objects.
- because the queue is now retained, it should be easier to save it as a
spotify playlist

closes #12
2019-03-06 23:59:33 +01:00
Henrik Friedrichsen
c3fcb3ce21 use proper buttons for playlists
at some point the text on the right should display the number of tracks and
total duration of the playlist
2019-03-06 01:08:52 +01:00
Henrik Friedrichsen
0d2896363f small fixes 2019-03-06 00:47:30 +01:00
Henrik Friedrichsen
7b4c40026a extract SplitButton from TrackButton for future PlaylistButton 2019-03-06 00:46:47 +01:00
Henrik Friedrichsen
91e89c2970 introduce track data class 2019-03-06 00:15:28 +01:00
Henrik Friedrichsen
0f3cc41115 cargo fmt 2019-03-05 23:26:23 +01:00
Henrik Friedrichsen
766b894aa0 minor statusbar style tweaks 2019-03-05 23:26:06 +01:00
Henrik Friedrichsen
ea762dbed3 don't search with empty input 2019-03-05 22:15:07 +01:00
Henrik Friedrichsen
c517158dcb update screenshot 2019-03-05 20:06:01 +01:00
KoffeinFlummi
7a24eca809 Add main layout view and status bar
Fix #4
2019-03-05 19:18:36 +01:00
Henrik
34a03613e4 Merge pull request #16 from andrewhalle/andrewhalle/add-pkgconfig-requirement
add pkg-config as a requirement
2019-03-05 09:56:02 +01:00
Andrew Halle
93fa387a1a add pkg-config as a requirement 2019-03-04 17:09:25 -08:00
Henrik Friedrichsen
6d243eeb3c fix return type 2019-03-04 19:15:13 +01:00
Henrik Friedrichsen
92811a2ce3 use scrollview in linearlayout for playlist items
this approach is more flexible for future additions, e.g. further callbacks such
as playlist deletion.
2019-03-04 19:13:39 +01:00
Felipe Sere
7d948707fe Load playlists only when opening the playlist screen 2019-03-04 17:31:04 +00:00
Henrik
c603096d26 Merge pull request #13 from felipesere/develop
Implement basic playlist that simply queues songs
2019-03-04 18:03:05 +01:00
Felipe Sere
99674a5ac0 Implement basic playlist that simply queues songs 2019-03-04 16:41:04 +00:00
Henrik Friedrichsen
9507add6a4 more refined queue events + playlist delete binding
- move from listview to linearlayout + scrollview
- doesn't redraw the whole view on queue changes anymore
- uses new cursive functions for linearlayout (needs cursive git)

closes #3
2019-03-04 00:56:34 +01:00
Henrik Friedrichsen
38592e3a4c bump env_logger 2019-03-04 00:53:56 +01:00
Henrik Friedrichsen
19ae8fcbfc rename player events 2019-03-04 00:29:48 +01:00
Henrik Friedrichsen
bb8326af88 refer to Self 2019-03-03 23:47:56 +01:00
Henrik Friedrichsen
6a33d3df92 exclude screenshots from package 2019-03-03 21:36:37 +01:00
Henrik Friedrichsen
2622257b2f pin librespot version 2019-03-03 21:10:14 +01:00