Commit Graph

932 Commits

Author SHA1 Message Date
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
Andrzej Rybczak
f6f7a8a27e move code responsible for replacing content in strings to Replace() 2009-10-10 15:36:51 +02:00
Andrzej Rybczak
63fbdaae1f ignore width of last column and use all remained space for it 2009-10-10 12:04:52 +02:00
Andrzej Rybczak
8a14d08cd9 fix detection if database has been updated 2009-10-08 16:16:47 +02:00
Andrzej Rybczak
89779e6fb9 sort files in Browser::GetLocalDirectory()
files are read in kinda random order, so if one added local dir
to playlist, (s)he would get them not sorted at all. fix that by
sorting files that have been read recently from current dir, so
that we get files sorted within each read directory (if read
recursively), which is nice.
2009-10-08 16:09:45 +02:00
Andrzej Rybczak
eaa7364f79 fix another copypasta bug
ugh.
2009-10-07 16:14:14 +02:00
Andrzej Rybczak
8b460d4635 fix MPD::Song::GetTrackNumber() 2009-10-07 16:02:36 +02:00
Andrzej Rybczak
183077d573 fix copy'n'paste bug 2009-10-07 15:22:49 +02:00
Andrzej Rybczak
b0943c28c2 fix adding songs to playlist (broken by d82498ea) 2009-10-06 11:11:59 +02:00
Andrzej Rybczak
c8c5aa079e fix appending now playing song prefix/suffix if playlist is filtered 2009-10-06 09:19:06 +02:00
Andrzej Rybczak
6f7b77c84e editing lyrics shouldn't require mpd_music_dir variable to be set 2009-10-06 07:46:50 +02:00
Andrzej Rybczak
d82498ea16 throw away isConnected variable and use itsConnection instead 2009-10-06 07:18:46 +02:00
Andrzej Rybczak
f61b4716a2 add support for multiple tags 2009-10-04 21:10:57 +02:00
Andrzej Rybczak
663aba02d2 allow for empty strings in MPD::Song::SetTag()
if they weren't allowed, clearing tag value in tag editor would be impossible.
2009-10-04 17:04:48 +02:00
Andrzej Rybczak
409d60ed18 Merge branch 'libmpdclient2'
Conflicts:
	src/browser.cpp
	src/ncmpcpp.cpp
2009-10-04 16:23:42 +02:00
Andrzej Rybczak
008ba5fca8 change version to 0.4.2_pre 2009-10-04 16:18:37 +02:00
Andrzej Rybczak
b0212a3779 fix MPD::Connection::GetDirectories()
they should return only dirs from main dir, not from all subdirs
2009-10-04 16:14:45 +02:00
Andrzej Rybczak
de6db568c1 fix broken compilation due to lack of setters for mpd_song 2009-10-04 16:10:37 +02:00