Commit Graph

54 Commits

Author SHA1 Message Date
Henrik Friedrichsen
74b4e65b64 Refactor: move playable models to separate module 2021-11-08 20:44:21 +01:00
Henrik Friedrichsen
ec640581bc Add initial_screen config variable
Resolves #616
2021-10-15 17:20:12 +02:00
Henrik Friedrichsen
0c69e991b8 Upgrade to librespot 0.3.0
- logarithmic volume conversion is now done by librespot
- use default normalisation threshold
2021-10-14 23:41:00 +02:00
Henrik Friedrichsen
d731fe7188 Make command_key configurable
Fixes #487
2021-07-27 01:35:21 +02:00
Henrik Friedrichsen
2a82826e7a Add commandline flag for custom config filename
Related to #565
2021-07-22 17:17:57 +02:00
Henrik Friedrichsen
b42315d113 Add flip_status_indicators setting
Fixes #511
2021-05-14 17:41:19 +02:00
Henrik Friedrichsen
5fd93c33cb Add audio_cache_size to set maximum cache size 2021-05-07 23:14:26 +02:00
Henrik Friedrichsen
71d42d489e Remove extern crate statements
https://doc.rust-lang.org/edition-guide/rust-2018/module-system/path-clarity.html
2021-05-07 22:51:32 +02:00
Henrik Friedrichsen
50fcab4d7a Store user state in binary CBOR format
The state structure is growing a little too complex to store it as a TOML.
User state is now stored at `~/.config/ncspot/userstate.cbor`.
2021-04-11 00:47:49 +02:00
Henrik Friedrichsen
e61e18608b Move config (de)serialization to separate file 2021-04-11 00:46:25 +02:00
Christopher Hasse
8c68347c24 Allow creation of default userstate.toml file
Serializing an empty `Vec<Playable>` causes serde to panic as described
in #485 This commit tells serde not to serialize `queue` if it is an
empty `Vec`.
2021-04-10 14:59:37 +02:00
Henrik Friedrichsen
cea5228245 (Re)store currently playing track + shuffle state
Solves #448
2021-04-09 19:10:34 +02:00
Henrik Friedrichsen
ca8f1a8545 Persist sorting orders for playlists
Closes #436
2021-03-05 21:54:29 +01:00
KoffeinFlummi
df87ff9bdd Implement cover drawing as optional feature 2021-02-27 13:14:49 +01:00
Henrik Friedrichsen
db894d7ce8 Add config values to override shuffle/repeat state 2021-02-25 21:07:12 +01:00
Henrik Friedrichsen
92d1978340 Save track queue when closing and restore at start 2021-02-22 22:14:34 +01:00
Henrik Friedrichsen
a880ffd1f6 Persist volume and shuffle/repeat state 2021-02-22 22:14:34 +01:00
Qluxzz
9bc98f70fd Expose gapless playback config option 2021-01-08 09:40:50 +01:00
Henrik Friedrichsen
013beb245b refactor: pass globally mutable config reference
Before, copies of the configuration were passed over. This change also
causes configuration reloads to affect the entire application and is
easier to maintain but introduces some RwLock overhead.
2020-10-18 13:09:45 +02:00
Henrik Friedrichsen
e1b4892b8a make album column for tracks configurable
introduces new config variable `album_column`

fixes #267
2020-10-17 23:56:23 +02:00
Henrik Friedrichsen
f00580b97e highlight search query matches in listviews 2020-10-15 23:43:18 +02:00
Mario Rodas
6bb2c08705 Replace directories with platform_dirs create
`directories` create is no longer maintained, and uses
`~/Library/Preferences` on MacOS, but Apple advises against creating
files in `Preferences`.

`platform-dirs` allows to use `~/.config` on MacOS.
2020-10-12 10:46:36 +02:00
eulerfan271
9e970f5799 Added config option for bitrate (#270)
* added config option for bitrate

* updated README.md to include bitrate config options
2020-09-22 17:01:56 +02:00
Henrik Friedrichsen
e5bc12b1ba use cfg of spotify object
TODO:
- apply this to other single config values that are passed directly, e.g. in the
  statusbar
- use a more appropriate object to hold `cfg`
2020-08-18 23:06:41 +02:00
Ronak Buch
097f59eb83 Add notifications 2020-08-18 23:06:38 +02:00
Henrik Friedrichsen
4f71b2489b implement command to reload config (#243)
* implement command to reload themes

* refresh keybindings after config reload
2020-08-12 01:12:08 +02:00
Henrik Friedrichsen
65126c5c78 add configuration value to drop default keybindings
resolves #204
2020-06-18 19:33:46 +02:00
Henrik Friedrichsen
91ce808ef8 support configuration of audio backend and backend device
fixes #194
2020-05-19 00:05:32 +02:00
Henrik Friedrichsen
d04766160d implement audio_cache setting
fixes #196
2020-05-14 22:11:35 +02:00
Henrik Friedrichsen
85bc898830 implement volume normalization setting
fixes #195
2020-05-14 21:48:09 +02:00
Henrik Friedrichsen
510f1ff6ad add new themable color for selected + playing track
fixes #166
2020-04-09 23:50:56 +02:00
dann-merlin
45858df8a3 Volume configurable range 0-100 2020-03-03 18:05:03 +01:00
dann-merlin
56a178dcfd Added configuration option for initial shuffle, repeat, volume 2020-03-03 18:05:03 +01:00
Henrik Friedrichsen
cea2cbb33e remove unused cfg parameters 2020-02-05 22:08:11 +01:00
Henrik Friedrichsen
90d19b1b2d drop broken proxy setting and rely on ENV['http_proxy'] instead
fixes #118
fixes #119
2020-02-05 21:50:46 +01:00
Henrik Friedrichsen
fa960a4eba add initial help screen + keybinding -> command parsing
still needs some more work, i.e. to show commands in help instead of parsed data
structures, but it's a start.

fixes #117
fixes #121
2020-02-02 21:51:40 +01:00
Henrik Friedrichsen
0695434ca0 fix: recursively create directories instead of failing
e.g. when ~/.config does not exist
2019-11-24 16:39:15 +01:00
Henrik Friedrichsen
177c4893e0 add proxy configuration value
+ document possible configuration options

fixes #109
2019-11-21 22:45:09 +01:00
Rasmus Larsen
1671db14c1 Move to enum-based commands 2019-05-20 22:15:12 +02:00
Henrik Friedrichsen
4b4a027c3c add basepath cmdline flag
this allows a basepath to be set via commandline where ncspot will place
configuration and cache files.

fixes #65
2019-05-16 23:58:05 +02:00
Henrik Friedrichsen
1c26c7bcee cargo fmt/clippy all the things + make them mandatory in CI 2019-04-03 14:13:40 +02:00
KoffeinFlummi
d2dc2f0ecc Tweak progress bar style 2019-04-02 08:30:16 +02:00
Michael Edwards
d78e71871a Credentials helper if config not present or unparseable
Fixes #1
2019-03-30 22:40:42 +01:00
Michael Edwards
58f34b9288 Attempt to remove files on config path before creating folders 2019-03-30 22:40:42 +01:00
Henrik Friedrichsen
4f8342da83 refactorial spring cleaning (cargo fmt + clippy) 2019-03-26 20:51:39 +01:00
Henrik Friedrichsen
2eea519e82 refactor for more generic usage of config path helpers 2019-03-26 19:12:07 +01:00
Henrik Friedrichsen
3892ac07d0 move config to separate folder
this requires the previous config file to be deleted, as it has the same name of
the folder.
2019-03-26 19:05:02 +01:00
KoffeinFlummi
45062bd89e Add shuffle and repeat 2019-03-25 18:32:51 +01:00
KoffeinFlummi
69b79f5d63 Add configurable theme 2019-03-22 01:08:29 +01:00
Henrik Friedrichsen
cdf63ba9ac move from xdg crate to cross-platform directories crate
closes #38
2019-03-20 23:37:56 +01:00