Henrik Friedrichsen
54230bd85b
show commands in help screen in the same syntax they are parsed
2020-02-05 22:48:35 +01:00
Rasmus Larsen
1e0d9ea952
Handle default command behavior
2019-05-21 16:01:56 +02:00
Henrik Friedrichsen
534ccc904f
respect currently playing track when shifting queue entries
2019-04-07 14:14:56 +02:00
KoffeinFlummi
d223aae9c7
Add album and artist searching
2019-04-02 08:31:17 +02:00
Henrik Friedrichsen
fdb1d01d9a
fix crash when adding list to randomized empty queue
...
with an empty queue the index calculation results in a negative value for
unsigned type usize.
2019-03-30 23:23:16 +01:00
Henrik Friedrichsen
4f8342da83
refactorial spring cleaning (cargo fmt + clippy)
2019-03-26 20:51:39 +01:00
KoffeinFlummi
9cf1e9945e
Only regenerate random order if shuffle is enabled
2019-03-25 20:07:38 +01:00
KoffeinFlummi
45062bd89e
Add shuffle and repeat
2019-03-25 18:32:51 +01:00
Henrik Friedrichsen
0807f6464f
bugfix: don't panic when an invalid index is to be played
...
this can be triggered by commands or when hitting return in an empty queue
view. we shouldn't crash in that case..
2019-03-24 13:23:45 +01:00
Henrik Friedrichsen
9842b89457
remove obsolete events and callbacks
2019-03-17 22:14:59 +01:00
KoffeinFlummi
5a85619105
Add rebindable keys, refactor lists
2019-03-17 04:29:29 +01:00
KoffeinFlummi
9db8d0fcb3
Implement MPRIS D-Bus spec
2019-03-11 21:24:25 +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
75fd57108e
add 'clear playlist' keybinding
2019-03-08 00:23:03 +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
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
91e89c2970
introduce track data class
2019-03-06 00:15:28 +01: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
a562f0b7a7
implement custom track button view ( closes #2 )
2019-03-03 00:16:17 +01:00
Henrik Friedrichsen
70d68f8854
cargo fmt
2019-02-27 23:12:43 +01:00
Henrik Friedrichsen
d73a3c144e
always trigger a cursive event when a queue event is generated
2019-02-27 23:12:09 +01:00
Henrik Friedrichsen
d3c439342a
introduce global event sink to trigger updates across threads
2019-02-27 22:50:31 +01:00
Henrik Friedrichsen
bebc6175cc
cargo fmt
2019-02-26 23:32:38 +01:00
Henrik Friedrichsen
204cb18410
implement preliminary queue view
...
this approach needs some (re)work, as the UI is not fully sync'd with the data,
yet. it'd probably be better to have an event system triggered by the queue,
that will cause a UI refresh or similar.
2019-02-26 23:30:16 +01:00
Henrik Friedrichsen
b06b6bc15b
rustfmt
2019-02-26 21:34:20 +01:00
Henrik Friedrichsen
0b26c5411c
initial track queue implementation
2019-02-09 16:05:33 +01:00