| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
The property "repaint" is never read, since all callers repaint the
list window on demand.
|
|
|
|
| |
Automatically redraw the screen on demand, whenever data has changed.
|
|
|
|
|
| |
lyrics_repaint() or lyrics_repaint_if_active() are called after data
has changed, and the screen needs an update.
|
|
|
|
| |
Automatically redraw the list on demand, whenever data has changed.
|
|
|
|
|
| |
None of the paint() implementations actually use the screen pointer -
remove it from the method signature.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Without clearing previous screen contents, there may be corruptions,
make this mandatory and optimize screen clearing.
|
|
|
|
| |
Follow the same code style als MPD itself.
|
|
|
|
| |
Don't install the lyrics plugins if the lyrics screen is disabled.
|
|
|
|
|
|
|
| |
When the user does not specify "--prefix", ${prefix} is "NONE". This
breaks the default lyrics plugin directory, which was
"${prefix}/lib/ncmpc/lyrics". Fall back to ${ac_default_prefix} if
${prefix} is NONE.
|
|
|
|
| |
When installing lyrics plugins, I forgot to honor $(DESTDIR) if set.
|
|
|
|
|
|
|
|
| |
Python defaults to sending ASCII characters, and aborts if there are
non-ASCII characters in the string. Unfortunately, due to "C.UTF-8"
being not defined, we cannot reliably make Python use UTF-8, without
further locale settings. Thus, work around this mess by manually
encoding the result to UTF-8 in the script.
|
|
|
|
| |
Instead of manually adjusting the selection, let list_window.c do it.
|
|
|
|
|
| |
There are lots of functions not being used outside of list_window.c.
Make them static to make it easier for gcc to optimize.
|
|
|
|
|
| |
The lyrics library loads all plugins from the directory configured
with "--with-lyrics-plugin-dir".
|
|
|
|
|
| |
Removed the commented checks for libraries which aren't being used
anymore by the new lyrics code.
|
|
|
|
|
| |
Threading has been disabled when I overhauled lyrics support. Remove
all libgthread checks from configure.ac.
|
|
|
|
|
| |
Instead of letting our caller poll lyrics_result(), call it back as
soon as we have the result.
|
|
|
|
|
| |
Instead of creating a thread for handling lyrics plugin data, register
a channel at the glib main loop.
|
|
|
|
|
|
| |
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()).
|
|
|
|
| |
Set the shell option "-e" to abort when one of the tools fails.
|
|
|
|
|
| |
Instead of checking for the sentinel at the end of the option table,
check the option_table_size constant.
|
|
|
|
| |
Make the options_table constant, since it is never modified.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
The call to curs_set(0) in screen_read_password() was dead code,
because it was after the function return. Repair that.
|
|
|
|
| |
Store screen width and height as unsigned integer.
|
|
|
|
| |
Follow the same code style als MPD itself.
|
|
|
|
|
| |
Since screen.c has default code for CMD_SCREEN_UPDATE, return 0 from
the command handlers and let screen.c do the rest.
|
|
|
|
|
|
| |
Several screens ignore the attribute list_window->repaint. Don't set
it there. It will be replaced with a more intelligent repaint
algorithm later.
|
|
|
|
| |
The variable cur_action_id is not used at all.
|
|
|
|
|
| |
last_cmd stores the previous command sent to the screen. It is not a
timestamp, and its type should be command_t.
|
|
|
|
| |
Since the input_timestamp is only used by screen_play, move it there.
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Moved basic libncurses initialization to ncu.c and ncu.h. Keep
generic code out of screen.c.
|
|
|
|
| |
Before terminating ncmpc, free the keyboard GIOChannel object.
|
|
|
|
|
| |
Provide program name and version in AC_INIT. Add the option
"dist-bzip2" to AM_INIT_AUTOMAKE.
|
|
|
|
|
| |
"welcome-screen-list" shows the screen list in the top row shortly
after startup, and is enabled by default.
|
|
|
|
|
| |
There are several places where browser.filelist can become NULL.
Catch that everywhere and generate an empty filelist in this case.
|
|
|
|
| |
Don't call filelist_get() with an invalid index.
|
|
|
|
| |
Check the function parameters.
|
|
|
|
|
| |
Don't try to call add_query() with no valid selection, this causes a
segfault. This usually happens when ncmpc isn't connected.
|
|
|
|
| |
Check if connection->sock is valid in mpd_executeCommand().
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
During authentication, the message pointer was allocated, but never
freed. Allocate it only if it is really used (and freed).
|
|
|
|
| |
Follow the same code style als MPD itself.
|
|
|
|
|
| |
mpd_wait() must not be called when the socket is dead; add an
assertion there. In mpd_recv(), add a run-time check.
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
| |
The previously bundled po/Makefile.in would use predefined variables that
should be set by the configure script. f.e., $prefix was defined as
/usr/local, and caused po files to always be installed there instead of in
the prefix given to ./configure.
|