summaryrefslogtreecommitdiff
path: root/plugins/gtkui/mainplaylist.c
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-09-26 15:01:28 +0200
committerGravatar Alexey Yakovenko <wakeroid@gmail.com>2010-09-26 15:01:28 +0200
commit74ba92ebc78e60ad140198db9694777a17d4fa16 (patch)
treebfa406e184e70ac2292453c9b754eca1b5f6e6ce /plugins/gtkui/mainplaylist.c
parent241c1d792750e8bbffd7e2ebcd200a4034115991 (diff)
fixed several hangs/slowdowns/bugs in playlist selection code
Diffstat (limited to 'plugins/gtkui/mainplaylist.c')
-rw-r--r--plugins/gtkui/mainplaylist.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/plugins/gtkui/mainplaylist.c b/plugins/gtkui/mainplaylist.c
index 84e62951..2df3bd0e 100644
--- a/plugins/gtkui/mainplaylist.c
+++ b/plugins/gtkui/mainplaylist.c
@@ -148,7 +148,12 @@ void main_handle_doubleclick (DdbListview *listview, DdbListviewIter iter, int i
void main_selection_changed (DdbListviewIter it, int idx) {
DdbListview *search = DDB_LISTVIEW (lookup_widget (searchwin, "searchlist"));
- ddb_listview_draw_row (search, search_get_idx ((DB_playItem_t *)it), it);
+ if (idx == -1) {
+ ddb_listview_refresh (search, DDB_REFRESH_LIST | DDB_EXPOSE_LIST);
+ }
+ else {
+ ddb_listview_draw_row (search, search_get_idx ((DB_playItem_t *)it), it);
+ }
}
void main_draw_group_title (DdbListview *listview, GdkDrawable *drawable, DdbListviewIter it, int x, int y, int width, int height) {