Andrzej Rybczak
07099d4dc0
clear menu option right before rewriting it, not earlier
...
when it was cleared earlier, mpd status tracer could refresh window
while ncmpcpp was waiting for new string and empty line was visible.
2009-11-13 19:38:47 +01:00
Andrzej Rybczak
fdb9bfcd4f
remove a piece of code that was overwriting statusbar without any checks
...
maybe it made a difference in the past, but it's redundant now.
2009-11-13 19:34:08 +01:00
Andrzej Rybczak
3365b066c3
window: store strings history in list instead of deque
2009-11-13 18:28:13 +01:00
Andrzej Rybczak
180d71ed28
tag editor: refresh filename parser windows properly
2009-11-13 16:50:52 +01:00
Andrzej Rybczak
9a5a053ec3
improve handling columns in media library a bit
...
given column should clear only the first column on its right, not all.
2009-11-13 16:39:43 +01:00
Andrzej Rybczak
495ec25a0a
simplify Clear() in Window and its derivatives
...
it removes argument responsible for immediate refreshing.
since after all calls that were refreshing screen there was
call to Refresh() anyway, this switch doesn't make much sense.
2009-11-13 15:59:18 +01:00
Andrzej Rybczak
b83adc01b9
check for errors after calling status updater
2009-11-13 15:30:02 +01:00
Andrzej Rybczak
d4fddf4466
update directory after db update only if current screen is browser
2009-11-13 15:26:17 +01:00
Andrzej Rybczak
3b7f19f095
new feature: support for centered cursor (disabled by default)
2009-11-11 00:50:14 +01:00
Andrzej Rybczak
35a182d79e
add support for scrolling the list with mouse wheel by given number of lines
2009-11-11 00:31:52 +01:00
Andrzej Rybczak
c6e26e121f
do not ask if one wants to enter password, just ask for password
2009-11-08 19:34:10 +01:00
Andrzej Rybczak
5b2dbe026c
do not delete items from playlist if sending command delete failed
2009-11-05 22:16:54 +01:00
Andrzej Rybczak
60d932ef68
fix 'db update' flag not being updated if mpd is stopped
2009-11-02 05:29:49 +01:00
Andrzej Rybczak
0a95aebd7c
improve elapsed time handling
...
this also throws away hack that was used to count elapsed
time locally while polling mpd, it's not needed anymore.
2009-10-30 20:04:47 +01:00
Andrzej Rybczak
b6059e2255
visualizer: set interval between "synchronizations" to sane value
...
ugh, I set it to 5 seconds for testing purposes and then forgot
to change it back ~~ it should be at least 120 seconds.
2009-10-30 01:05:55 +01:00
Andrzej Rybczak
dfb4653669
fix MPD::Connection::Add()
2009-10-28 19:23:43 +01:00
Andrzej Rybczak
db5efc6eb9
update screen in TraceMpdStatus(), not in the main loop
...
this makes screen update even if ncmpcpp is in Window::GetString().
2009-10-28 19:21:35 +01:00
Andrzej Rybczak
b9a14e37ab
fix screen resize
...
ncmpcpp was sometimes segfaulting while resizing screen, this commit fixes that.
2009-10-28 15:16:54 +01:00
Andrzej Rybczak
fa9b58627a
fix seeking with f/b in visualizer
...
visualizer specific timeout is too small, so we
need to set it to default value while seeking.
2009-10-27 02:40:40 +01:00
Andrzej Rybczak
23d5601968
fix config option description in man page
2009-10-27 02:34:29 +01:00
Andrzej Rybczak
95ce4065ae
add event handler for MPD_IDLE_OUTPUT notification
2009-10-27 02:30:28 +01:00
Andrzej Rybczak
e43ea18d29
provide a way to sync between visualization and sound
...
workaround for http://musicpd.org/mantis/view.php?id=2503
2009-10-27 02:15:51 +01:00
Andrzej Rybczak
164d32c079
use one global timer instead of several local ones
2009-10-26 18:14:06 +01:00
Andrzej Rybczak
a91d02e181
fix bug that could cause ncmpcpp termination
...
steps to reproduce it:
- go to local browser
- edit tags of the last item using tiny tag editor
- move item to another directory by renaming it
- save tags
tadam! but it's no more.
2009-10-26 16:24:58 +01:00
Andrzej Rybczak
dd866e9337
fix visualizer
2009-10-25 23:24:12 +01:00
Andrzej Rybczak
b947575528
move code responsible for screen resize to SIGWINCH handler
2009-10-25 22:22:05 +01:00
Andrzej Rybczak
9f5e9e60ff
use idle mask to see what changed instead of comparing old and new status
2009-10-25 21:16:21 +01:00
Andrzej Rybczak
dd04406ee5
poll both stdin and mpd using one select()
...
this allows for immediate reading mpd events
2009-10-25 20:44:07 +01:00
Andrzej Rybczak
08f4459b54
make sure that MaxBeginning in Scrollpad::Refresh() is never negative
...
this sometimes triggered segfault in pdcurses
while switching to screens, that use scrollpads.
2009-10-25 03:49:02 +01:00
Andrzej Rybczak
e112e0d975
use select() instead of poll() as it's portable
2009-10-25 03:25:26 +01:00
Andrzej Rybczak
3e99bba5b8
use idle notifications instead of polling mpd all the time
2009-10-25 02:25:51 +02:00
Andrzej Rybczak
eff5ebba4e
fix locating now playing song in browser (using 'o')
...
due to change of keybinding for switching to local browser,
the trigger is invoked in SwitchTo() if main screen is already
pointing to browser. since we use 'o' in browser to locate now
playing song, this function was switching browser to wrong mode
and thus requested song couldn't be found.
2009-10-24 01:01:32 +02:00
Andrzej Rybczak
2af8b1f91b
change descriptions for mpd statistics since they can be misleading
...
mpd doesn't report unique albums, it only counts
different album names. same for artists.
different name for number of songs is just cosmetic.
2009-10-23 18:31:05 +02:00
Andrzej Rybczak
1a3e10dab7
new feature: toggle replay gain mode (requires >=mpd-0.16)
2009-10-23 18:20:52 +02:00
Andrzej Rybczak
75c4c791fd
clear and refresh statusbar immediately after unlock if mpd is stopped
2009-10-23 02:37:57 +02:00
Andrzej Rybczak
62b7df69f3
new feature: refetch lyrics
2009-10-20 00:35:51 +02:00
Andrzej Rybczak
a98eb5e9ac
add range support in NCurses::Menu::Sort()
2009-10-17 17:01:48 +02:00
Andrzej Rybczak
601c8e3ef2
playlist: support for range sort/reverse
2009-10-17 16:59:17 +02:00
Andrzej Rybczak
21dccc83fd
fix compilation --without-taglib
...
caused by 3551057dbb
2009-10-14 15:22:05 +02:00
Andrzej Rybczak
668713c5e7
prepend '0' to track number if it's in format x/xx
...
this fixes sorting and makes track numbers look more consistent.
2009-10-13 17:48:06 +02:00
Andrzej Rybczak
cb9bf30dac
scrollpad: do not reset starting position automatically in Clear()
...
this allows for scrolling mpd server info screen, since the content
is changing slightly every second and starting position was reset
each time it'd been happening, scrolling was impossible. this also
'fixes' the issue in other screens like lyrics, artist info and help
that was reset if main window has been resized, which sometimes could
be very annoying.
2009-10-11 17:16:19 +02:00
Andrzej Rybczak
03f6fd904f
new screen: mpd server info
2009-10-11 17:03:00 +02:00
Andrzej Rybczak
aebc5db0e1
fix segfault that occured if mpd was stopped and window had to be resized
...
we all love null pointer dereferences, don't we?
some methods from Song class need assertion guards to deal with that.
2009-10-11 01:59:09 +02:00
Andrzej Rybczak
3551057dbb
new feature: sort songs in browser by mtime (optional)
2009-10-10 23:32:05 +02:00
Andrzej Rybczak
b48133a743
change keybinding for changing browse mode
...
I shouldn't do that, but the old one will be much better for
choosing whether songs in browser have to be sorted by names
or modification date. Besides, binding this to browser key
makes browser behaviour more "compatible" with media library.
2009-10-10 22:32:18 +02:00
Andrzej Rybczak
3867b131ef
tiny tag editor: fix message about being unable to read the file
2009-10-10 18:50:15 +02:00
Andrzej Rybczak
833f608d60
shorten long names in messages displayed in statusbar
2009-10-10 18:37:53 +02:00
Andrzej Rybczak
89aa68c698
fix typo from f6f7a8a2
2009-10-10 17:13:30 +02:00
Andrzej Rybczak
b979189111
pass to MPD::Connection::AddSong() another parameter - position to add
2009-10-10 16:23:00 +02:00
Andrzej Rybczak
2cbd015ce4
make --now-playing support tabulations and line breakers
2009-10-10 15:44:29 +02:00