aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2008-09-25screen_artist: removed update() methodMax Kellermann1-25/+59
Repaint the artist screen on demand. No need for the update() method anymore.
2008-09-25screen_playlist: don't repaint in update()Max Kellermann1-17/+45
Repaint the playlist window on demand. Don't repaint it unconditionally in play_update().
2008-09-25list_window: removed property "repaint"Max Kellermann3-8/+1
The property "repaint" is never read, since all callers repaint the list window on demand.
2008-09-25screen_lyrics: removed the "update" methodMax Kellermann1-13/+4
Automatically redraw the screen on demand, whenever data has changed.
2008-09-25screen_lyrics: added lyrics_repaint()Max Kellermann1-10/+27
lyrics_repaint() or lyrics_repaint_if_active() are called after data has changed, and the screen needs an update.
2008-09-25screen_keydef: removed the update() methodMax Kellermann1-17/+33
Automatically redraw the list on demand, whenever data has changed.
2008-09-25screen: don't pass screen pointer to method paint()Max Kellermann9-19/+19
None of the paint() implementations actually use the screen pointer - remove it from the method signature.
2008-09-25screen: don't call wrefresh() in methods paint() and update()Max Kellermann7-16/+1
screen_paint() and screen_update() are responsible for refreshing the screen. We can remove all wrefresh() and wnoutrefresh() invocations from all paint() and update() method implementations.
2008-09-25list_window: removed property "clear"Max Kellermann9-41/+13
Without clearing previous screen contents, there may be corruptions, make this mandatory and optimize screen clearing.
2008-09-25code style, indent with tabs XMax Kellermann9-346/+321
Follow the same code style als MPD itself.
2008-09-23screen_play: use list_window_check_selected()Max Kellermann1-5/+1
Instead of manually adjusting the selection, let list_window.c do it.
2008-09-23list_window: converted several public functions to staticMax Kellermann2-12/+6
There are lots of functions not being used outside of list_window.c. Make them static to make it easier for gcc to optimize.
2008-09-23lyrics: configurable global plugin directoryMax Kellermann1-4/+19
The lyrics library loads all plugins from the directory configured with "--with-lyrics-plugin-dir".
2008-09-23lyrics: added callbackMax Kellermann3-69/+56
Instead of letting our caller poll lyrics_result(), call it back as soon as we have the result.
2008-09-23lyrics: reimplemented with aynchronous I/OMax Kellermann1-69/+98
Instead of creating a thread for handling lyrics plugin data, register a channel at the glib main loop.
2008-09-23screen_lyrics: set current.songMax Kellermann1-2/+2
The variable current.song was never set, thus the cache did not work. Don't reset it in screen_lyrics_clear() (which is called from screen_lyrics_set()).
2008-09-22options: added constant option_table_sizeMax Kellermann1-7/+7
Instead of checking for the sentinel at the end of the option table, check the option_table_size constant.
2008-09-22options: constant options_tableMax Kellermann1-3/+3
Make the options_table constant, since it is never modified.
2008-09-22screen_utils: simplified call to wreadln_masked()Max Kellermann1-3/+2
If prompt is NULL, do not add a second call to wreadln_masked() with a literal string, but assign this literal string to the variable "prompt". This saves several bytes in the compiled binary.
2008-09-22screen_utils: hide cursor after screen_read_password()Max Kellermann1-2/+5
The call to curs_set(0) in screen_read_password() was dead code, because it was after the function return. Repair that.
2008-09-22screen: unsigned integers for screen dimensionsMax Kellermann2-5/+5
Store screen width and height as unsigned integer.
2008-09-22code style, indent with tabs IXMax Kellermann2-309/+301
Follow the same code style als MPD itself.
2008-09-22screen: simplified CMD_SCREEN_UPDATE handlersMax Kellermann3-8/+4
Since screen.c has default code for CMD_SCREEN_UPDATE, return 0 from the command handlers and let screen.c do the rest.
2008-09-22screen: don't set list_window->repaintMax Kellermann3-9/+1
Several screens ignore the attribute list_window->repaint. Don't set it there. It will be replaced with a more intelligent repaint algorithm later.
2008-09-22screen: removed window.cur_action_idMax Kellermann1-1/+0
The variable cur_action_id is not used at all.
2008-09-22screen: last_cmd should be a command_tMax Kellermann1-1/+2
last_cmd stores the previous command sent to the screen. It is not a timestamp, and its type should be command_t.
2008-09-22screen: moved input_timestamp to screen_play.cMax Kellermann3-4/+6
Since the input_timestamp is only used by screen_play, move it there.
2008-09-22screen: moved list_window mouse code to list_window.cMax Kellermann6-28/+47
Move the portion of screen_get_mouse_event() which handles list_window clicks to list_window.c. The code contained a NULL pointer dereference, which is now fixed.
2008-09-22screen: moved code to ncu.cMax Kellermann6-35/+97
Moved basic libncurses initialization to ncu.c and ncu.h. Keep generic code out of screen.c.
2008-09-22main: free keyboard IO channelMax Kellermann1-2/+7
Before terminating ncmpc, free the keyboard GIOChannel object.
2008-09-22added option "welcome-screen-list"David Shakaryan4-1/+9
"welcome-screen-list" shows the screen list in the top row shortly after startup, and is enabled by default.
2008-09-21browse: ensure that filelist!=NULLMax Kellermann2-4/+18
There are several places where browser.filelist can become NULL. Catch that everywhere and generate an empty filelist in this case.
2008-09-21browser: check if the selection is validMax Kellermann2-1/+8
Don't call filelist_get() with an invalid index.
2008-09-21support: added assertionsMax Kellermann1-0/+16
Check the function parameters.
2008-09-21screen_artist: check if anything is selectedMax Kellermann1-0/+8
Don't try to call add_query() with no valid selection, this causes a segfault. This usually happens when ncmpc isn't connected.
2008-09-21libmpdclient: added another connection->sock checkMax Kellermann1-0/+6
Check if connection->sock is valid in mpd_executeCommand().
2008-09-21mpdclient: check errorCode only if MPD_ERROR_ACK is setMax Kellermann1-1/+2
connection->errorCode has an undefined value when connection->error is not MPD_ERROR_ACK. Read it only if MPD_ERROR_ACK is set, to make valgrind happy.
2008-09-21mpdclient: fix memory leak in mpdclient_finish_command()Max Kellermann1-4/+5
During authentication, the message pointer was allocated, but never freed. Allocate it only if it is really used (and freed).
2008-09-21code style, indent with tabs VIIIMax Kellermann1-171/+143
Follow the same code style als MPD itself.
2008-09-21libmpdclient: check connection->sock >= 0Max Kellermann1-0/+10
mpd_wait() must not be called when the socket is dead; add an assertion there. In mpd_recv(), add a run-time check.
2008-09-21added optional bitrate display to status barJ. Alexander Treuman3-4/+20
If visible-bitrate is enabled, then the current bitrate will be drawn next to the song time in the status bar. By default it will not be displayed.
2008-09-21wreadln: adding additional line editing bindsJ. Alexander Treuman1-1/+9
Adding some GNU readline-style binds. These are ^B/^F to move the cursor back/forward, and ^N/^P to go to the next/previous line.
2008-09-21mpdclient: don't call screen_status_message()Max Kellermann1-2/+0
The caller should decide how to display error messages.
2008-09-21Adding crop feature in ncmpcYannick LM6-0/+44
The "crop" command deletes all songs from the playlist, except the one currently being played.
2008-09-21screen_help: removed update() methodMax Kellermann1-13/+6
Why redraw the help screen when nothing has changed? Redraw it only after help_cmd(), and when explicitly requested (help_paint()).
2008-09-19filelist: fix segfault during filelist_sort()Max Kellermann1-1/+13
When I converted the filelist from GList to GPtrArray, I missed that the GCompareFunc does not actually get the pointers from g_ptr_array_sort(), but pointers to the pointers... run g_ptr_array_sort_with_data() instead with a wrapper function.
2008-09-19filelist: free entries with g_slice_free()Max Kellermann1-2/+2
Somehow I forgot about changing free() to g_slice_free() in the previous patch...
2008-09-19filelist: allocate entries with g_slice_alloc()Max Kellermann1-4/+2
In this case, slices are faster. Also fix a memory leak in filelist_prepend() which I simply forgot about in the last patch set.
2008-09-19filelist: use GPtrArray instead of GListMax Kellermann5-63/+57
Since we do a lot of indexed accesses to the filelist, a linked list doesn't seem appropriate. Use GPtrArray instead.
2008-09-19browser: added function browser_get_selected()Max Kellermann1-9/+11
browser_get_selected() checks if there is a file list and a valid selection, and returns the selected entry.