From 86030ae2dc8298a34cf7d537769fe0f0f0bbb4bd Mon Sep 17 00:00:00 2001 From: waker Date: Wed, 25 Apr 2012 16:10:03 +0200 Subject: gtkui: don't re-apply search on add/remove to/from playqueue, remove, reload metadata --- plugins/gtkui/plcommon.c | 18 ++++++++++-------- plugins/gtkui/search.c | 8 ++++++++ plugins/gtkui/search.h | 3 +++ 3 files changed, 21 insertions(+), 8 deletions(-) (limited to 'plugins') diff --git a/plugins/gtkui/plcommon.c b/plugins/gtkui/plcommon.c index 09b65353..b1c77348 100644 --- a/plugins/gtkui/plcommon.c +++ b/plugins/gtkui/plcommon.c @@ -224,7 +224,8 @@ main_add_to_playback_queue_activate (GtkMenuItem *menuitem, deadbeef->pl_item_unref (it); it = next; } - playlist_refresh (); + main_refresh (); + search_redraw (); } void @@ -242,7 +243,8 @@ main_remove_from_playback_queue_activate deadbeef->pl_item_unref (it); it = next; } - playlist_refresh (); + main_refresh (); + search_redraw (); } void @@ -274,7 +276,8 @@ main_reload_metadata_activate deadbeef->pl_item_unref (it); it = next; } - playlist_refresh (); + main_refresh (); + search_redraw (); trkproperties_fill_metadata (); } @@ -302,7 +305,7 @@ on_remove1_activate (GtkMenuItem *menuitem, int cursor = deadbeef->pl_delete_selected (); deadbeef->pl_save_all (); main_refresh (); - search_refresh (); + search_redraw (); } @@ -314,18 +317,17 @@ on_crop1_activate (GtkMenuItem *menuitem, deadbeef->pl_crop_selected (); deadbeef->pl_save_all (); main_refresh (); - search_refresh (); + search_redraw (); } void on_remove2_activate (GtkMenuItem *menuitem, gpointer user_data) { - GtkWidget *widget = GTK_WIDGET (menuitem); int cursor = deadbeef->pl_delete_selected (); deadbeef->pl_save_all (); main_refresh (); - search_refresh (); + search_redraw (); } void @@ -363,7 +365,7 @@ on_remove_from_disk_activate (GtkMenuItem *menuitem, deadbeef->pl_unlock (); main_refresh (); - search_refresh (); + search_redraw (); } void diff --git a/plugins/gtkui/search.c b/plugins/gtkui/search.c index 662839bf..2ffaf75b 100644 --- a/plugins/gtkui/search.c +++ b/plugins/gtkui/search.c @@ -91,6 +91,14 @@ search_refresh (void) { } } +void +search_redraw (void) { + if (searchwin && gtk_widget_get_visible (searchwin)) { + GtkWidget *pl = lookup_widget (searchwin, "searchlist"); + ddb_listview_refresh (DDB_LISTVIEW (pl), DDB_REFRESH_VSCROLL | DDB_REFRESH_LIST | DDB_LIST_CHANGED); + } +} + ///////// searchwin header handlers gboolean diff --git a/plugins/gtkui/search.h b/plugins/gtkui/search.h index 104bc24f..7a2a3727 100644 --- a/plugins/gtkui/search.h +++ b/plugins/gtkui/search.h @@ -30,6 +30,9 @@ search_start (void); void search_refresh (void); +void +search_redraw (void); + int search_get_idx (DdbListviewIter it); -- cgit v1.2.3