aboutsummaryrefslogtreecommitdiffstats
path: root/src/screen_browser.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2008-11-18command: added CMD_LOCATE to locate song in databaseMax Kellermann1-0/+9
Pressing 'l' switches to the file browser (screen_file) and locates the previously selected song in the server's database.
2008-11-18filelist: filelist_find_song() returns position instead of pointerMax Kellermann1-2/+4
Making the function return the index makes it more flexible: those who want the pointer can use filelist_get(), and the others may use the index for other purposes.
2008-11-18screen_browser: eliminated local variable "entity"Max Kellermann1-2/+0
"entity" is not being used after its initial assignment.
2008-11-18screen_browser: check if filelist is setMax Kellermann1-3/+8
When calling browser_change_directory() before a filelist was set, ncmpc would crash due to a NULL pointer dereference. This scenario is not possible currently, since the open() method allocates the filelist.
2008-11-18screen_browser: use bool for return valuesMax Kellermann1-22/+22
Return true/false instead of 0/-1.
2008-11-07mpdclient: removed _utf8 suffix from function namesMax Kellermann1-1/+1
All functions must receive UTF-8 file names. Delete all which still work with locale strings, and remove the _utf8 suffix from the others.
2008-11-07mpdclient: expect UTF-8 stringsMax Kellermann1-2/+2
Don't convert the character set of strings to and from the current locale. This library cannot know what the strings are going to be used for, so it should not mess with them.
2008-11-07screen_browser: free g_path_get_dirname() return valueMax Kellermann1-0/+1
The function browser_change_directory() did not free the return value of g_path_get_dirname().
2008-11-07disable more features with --enable-miniMax Kellermann1-2/+27
Disable lots of smaller features which don't have a separate configure option: - xterm title - screen list - horizontal scrolling - MPD version number check - key binding checks - character set conversion - bitrate display - highlighting in the file browser - completion / history
2008-10-08screen_browser: fix warning when lyrics screen is disabledMax Kellermann1-0/+2
A local variable was only used by the lyrics screen code. Put #ifdef around its declaration.
2008-10-03screen: export the global variable "screen"Max Kellermann1-3/+2
screen_t is a singleton. We do not have to pass it around everywhere. Export the one global variable.
2008-10-03don't import mpdclient_finish_command() twiceMax Kellermann1-2/+0
mpdclient_finish_command() is already imported by mpdclient.h, don't do it again in the sources.
2008-10-03list_window: remove list_window_state_tMax Kellermann1-9/+15
We do not need to save a stack of list window states. When we return to a parent directory, we just have to find the directory which we come from in the parent list. Note that this patch resets the cursor when going to the root directory, but I think it's not that important, and I will deal with that later.
2008-10-03use g_basename() instead of basename()Max Kellermann1-4/+4
g_basename() is always available, no need to implement a fallback. Also use g_path_get_dirname(), g_path_get_basename().
2008-10-02screen_browser: added constant playlist_formatMax Kellermann1-6/+3
Moved the format string for playlist files to the constant "playlist_format".
2008-10-02moved code to charset.cMax Kellermann1-0/+1
Move everything which deals with UTF-8 strings and character set conversion to charset.c, header charset.h.
2008-10-02removed LIST_FORMAT, STATUS_FORMATMax Kellermann1-4/+3
Use options.list_format and options.status_format directly instead of these two macros.
2008-10-02moved i18n macros to i18n.hMax Kellermann1-0/+1
Don't make everybody include ncmpc.h just to have generic features. Move generic i18n macros to a separate header.
2008-10-02removed the debugging function D()Max Kellermann1-1/+0
gdb is for debugging. We don't need D() calls littered all over.
2008-10-02screen_browser: unexport command implementationsMax Kellermann1-5/+7
When we created created browser_cmd(), several functions of the screen_browser API weren't used by other sources anymore. We can now unexport them.
2008-10-02screen_lyrics: add screen_lyrics_switch()Max Kellermann1-0/+16
screen_lyrics_switch() opens the lyrics screen and displays the lyrics of the specified song. This way, the user may view the lyrics of any song in the database browser.
2008-10-02screen_browser: added browser_cmd()Max Kellermann1-0/+53
Merge a lot of code from the 3 browser screen into browser_cmd().
2008-09-25screen_browser: added hotkey for adding songMax Kellermann1-0/+11
CMD_ADD ('a') appends a song to the playlist, no matter if it is already there, i.e. unlike CMD_SELECT, it does not toggle the song.
2008-09-25code style, indent with tabs XMax Kellermann1-2/+0
Follow the same code style als MPD itself.
2008-09-22screen: moved list_window mouse code to list_window.cMax Kellermann1-1/+2
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-21browser: check if the selection is validMax Kellermann1-1/+2
Don't call filelist_get() with an invalid index.
2008-09-19filelist: use GPtrArray instead of GListMax Kellermann1-19/+15
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.
2008-09-19filelist: provide more functions for working with a filelistMax Kellermann1-6/+7
Avoid direct accesses to the filelist struct, provide an API for that.
2008-09-19filelist: drop "mpdclient" prefixMax Kellermann1-2/+2
The separate filelist library does not depend on mpdclient, so the prefix is superfluous.
2008-09-19browser: use mpdclient_filelist_find_song() in set_highlight()Max Kellermann1-18/+9
A song should not be twice in the browser. Simplify set_highlight() by finding the entry with mpdclient_filelist_find_song().
2008-09-19browser: song must not be NULL in set_highlight()Max Kellermann1-2/+1
The caller must not pass NULL to set_highlight(). Replaced check with assertion.
2008-09-18screen_browser: removed entity.song!=NULL checkMax Kellermann1-6/+5
It is guaranteed that the "song" attribute is not NULL, remove the check.
2008-09-18screen_browser: removed redundant highlight checkMax Kellermann1-6/+5
browser_select_entry() checked the entry's "highlight" flag twice: the first time, it was toggled, and the second time, action was performed based on the flag. Merge the two checks.
2008-09-18screen_browser: removed redundant entity type checksMax Kellermann1-14/+10
The function browser_select_entry() returns early when the entity type is not "SONG". No need to double check that.
2008-09-18screen_browser: moved code to browser_select_entry()Max Kellermann1-51/+24
Moved code from browser_handle_select(). Call this new function also from browser_handle_select_all(). This fixes a bug in select_all(): it actually did not select all, but stopped after the first song.
2008-09-18screen_browser: removed commented codeMax Kellermann1-15/+0
2008-09-18screen_browser: moved code to browser_playlist_changed()Max Kellermann1-2/+29
Merge code from all 3 browser screens into one generic browser function.
2008-09-18screen_browser: moved code to screen_browser.cMax Kellermann1-0/+474
Isolate the generic browser code from the directory browser.