Code

screen_interface: make cols/rows unsigned
[ncmpc.git] / src / screen_search.c
index 0d39ddb151e76c6b7b7a32fd8b520d8bef778ac7..30be533baf66d63875173637ce0f0a5858e8035a 100644 (file)
@@ -1,5 +1,5 @@
 /* ncmpc (Ncurses MPD Client)
- * (c) 2004-2010 The Music Player Daemon Project
+ * (c) 2004-2017 The Music Player Daemon Project
  * Project homepage: http://musicpd.org
  *
  * This program is free software; you can redistribute it and/or modify
@@ -112,16 +112,6 @@ lw_search_help_callback(unsigned idx, gcc_unused void *data)
        return help_text[idx];
 }
 
-static void
-screen_search_paint(void);
-
-static void
-search_repaint(void)
-{
-       screen_search_paint();
-       wrefresh(browser.lw->w);
-}
-
 /* sanity check search mode value */
 static void
 search_check_mode(void)
@@ -349,9 +339,14 @@ search_new(struct mpdclient *c)
 }
 
 static void
-screen_search_init(WINDOW *w, int cols, int rows)
+screen_search_init(WINDOW *w, unsigned cols, unsigned rows)
 {
        browser.lw = list_window_init(w, cols, rows);
+       if (options.search_format != NULL) {
+               browser.song_format = options.search_format;
+       } else {
+               browser.song_format = options.list_format;
+       }
        list_window_set_length(browser.lw, G_N_ELEMENTS(help_text));
 }
 
@@ -382,7 +377,7 @@ screen_search_open(gcc_unused struct mpdclient *c)
 }
 
 static void
-screen_search_resize(int cols, int rows)
+screen_search_resize(unsigned cols, unsigned rows)
 {
        list_window_resize(browser.lw, cols, rows);
 }
@@ -422,7 +417,7 @@ screen_search_update(struct mpdclient *c)
 {
        if (browser.filelist != NULL && c->events & MPD_IDLE_QUEUE) {
                screen_browser_sync_highlights(browser.filelist, &c->playlist);
-               search_repaint();
+               screen_search_paint();
        }
 }
 
@@ -436,21 +431,21 @@ screen_search_cmd(struct mpdclient *c, command_t cmd)
                        options.search_mode = 0;
                screen_status_printf(_("Search mode: %s"),
                                     _(mode[options.search_mode].label));
-               /* continue and update... */
+               /* fall through */
        case CMD_SCREEN_UPDATE:
                screen_search_reload(c);
-               search_repaint();
+               screen_search_paint();
                return true;
 
        case CMD_SCREEN_SEARCH:
                search_new(c);
-               search_repaint();
+               screen_search_paint();
                return true;
 
        case CMD_CLEAR:
                search_clear(true);
                list_window_reset(browser.lw);
-               search_repaint();
+               screen_search_paint();
                return true;
 
        default:
@@ -460,7 +455,7 @@ screen_search_cmd(struct mpdclient *c, command_t cmd)
        if (browser.filelist != NULL &&
            browser_cmd(&browser, c, cmd)) {
                if (screen_is_visible(&screen_search))
-                       search_repaint();
+                       screen_search_paint();
                return true;
        }