Commit Graph

74 Commits

Author SHA1 Message Date
Henrik Friedrichsen
1c26c7bcee cargo fmt/clippy all the things + make them mandatory in CI 2019-04-03 14:13:40 +02:00
Henrik Friedrichsen
25fbdb8bde force UI refresh after results are downloaded 2019-04-03 14:05:09 +02:00
KoffeinFlummi
6971c8d431 Refresh token in main thread before search 2019-04-02 08:31:17 +02:00
KoffeinFlummi
d223aae9c7 Add album and artist searching 2019-04-02 08:31:17 +02:00
KoffeinFlummi
c42c144ccf Use seperate threads for search 2019-04-02 08:30:42 +02:00
KoffeinFlummi
3c7b3e3618 Add tabview, add playlists to search 2019-04-02 08:30:42 +02:00
KoffeinFlummi
d2dc2f0ecc Tweak progress bar style 2019-04-02 08:30:16 +02:00
KoffeinFlummi
626ee79654 Pass focus cmd through, fix search keybinding 2019-04-02 08:30:15 +02:00
Henrik Friedrichsen
90ffd94c61 add missing whitespace to shuffle mode indicator 2019-03-30 23:20:23 +01:00
Michael Edwards
dc88f7e3ee Statusbar only needs nerdfont config 2019-03-30 22:40:42 +01:00
Henrik Friedrichsen
d7848ec333 code formatting + minor refactorings 2019-03-28 05:42:47 +01:00
KoffeinFlummi
486bc7617e Refactor command handling 2019-03-28 03:05:25 +01:00
Henrik Friedrichsen
83a394790f implement deletion of playlists
closes #11
2019-03-26 22:24:20 +01:00
Henrik Friedrichsen
0e3c9fc504 use constants for listview IDs and search edit 2019-03-26 21:28:25 +01:00
Henrik Friedrichsen
5c6aa593d8 restore old EditView behaviour in search
closes #49
2019-03-26 21:07:34 +01:00
Henrik Friedrichsen
4f8342da83 refactorial spring cleaning (cargo fmt + clippy) 2019-03-26 20:51:39 +01:00
KoffeinFlummi
45062bd89e Add shuffle and repeat 2019-03-25 18:32:51 +01:00
KoffeinFlummi
e6a7d8a693 Add seeking 2019-03-25 18:32:51 +01:00
Henrik Friedrichsen
79246957df also highlight currently playing track if selected 2019-03-24 19:11:36 +01:00
Henrik Friedrichsen
e0f7b5c156 implement functionality to save queues to playlists 2019-03-24 16:33:39 +01:00
Henrik Friedrichsen
212edcb18c implement modal view wrapper
this wrapper swallows all events that were not processed by the child view. it
can be used for modal dialogs.
2019-03-24 16:30:48 +01:00
Henrik Friedrichsen
2a7770177b bugfix: make sure len is in bounds of usize 2019-03-24 01:02:08 +01:00
Henrik Friedrichsen
7e17b127ac Merge branch 'KoffeinFlummi-theming' into develop 2019-03-22 16:05:43 +01:00
KoffeinFlummi
69b79f5d63 Add configurable theme 2019-03-22 01:08:29 +01:00
KoffeinFlummi
b7dcfb54fa Draw background for entire highlit row 2019-03-22 01:07:34 +01:00
Henrik Friedrichsen
2b45778196 handle rate limiting imposed by spotify web api
closes #29
2019-03-20 23:12:58 +01:00
Henrik Friedrichsen
2e8fbae89e cargo fmt 2019-03-20 23:10:37 +01:00
KoffeinFlummi
b7e0e87e44 Add scroll bar to ListView, remove ScrollView 2019-03-20 22:32:45 +01:00
Henrik Friedrichsen
e0d1d456f4 select first item in listviews initially 2019-03-17 23:03:35 +01:00
Henrik Friedrichsen
9842b89457 remove obsolete events and callbacks 2019-03-17 22:14:59 +01:00
Henrik Friedrichsen
32b1c4f583 the spelling focused is much more common 2019-03-17 19:38:06 +01:00
Henrik Friedrichsen
c74b5786f2 make TAB switch between search field and list view 2019-03-17 18:53:45 +01:00
Henrik Friedrichsen
d9eaa507c6 hardcode and arrow up/down keybindings for list navigation
this is considered default behaviour
2019-03-17 18:00:45 +01:00
Henrik Friedrichsen
da4f39ffba Merge branch 'keybindings' of git://github.com/KoffeinFlummi/ncspot into KoffeinFlummi-keybindings 2019-03-17 15:45:13 +01:00
KoffeinFlummi
5a85619105 Add rebindable keys, refactor lists 2019-03-17 04:29:29 +01:00
Henrik Friedrichsen
98038e2cd1 match file naming to playlists model 2019-03-16 12:44:34 +01:00
Henrik Friedrichsen
a5d00730ea implement playlist caching 2019-03-14 20:34:13 +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
90dd26fa02 fix panic caused by strings that where cut outside of char boundary 2019-03-11 21:35:36 +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
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
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
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