diff finch/libgnt/gntwm.c @ 29304:06144d315c08

gnt: Make sure the ordering of the windows is correct after a refresh.
author Sadrul Habib Chowdhury <imadil@gmail.com>
date Thu, 28 Jan 2010 17:24:13 +0000
parents 8bacc2a70576
children a8cc50c2279f
line wrap: on
line diff
--- a/finch/libgnt/gntwm.c	Thu Jan 28 05:06:24 2010 +0000
+++ b/finch/libgnt/gntwm.c	Thu Jan 28 17:24:13 2010 +0000
@@ -1113,12 +1113,20 @@
 refresh_screen(GntBindable *bindable, GList *null)
 {
 	GntWM *wm = GNT_WM(bindable);
+	GList *iter;
 
 	endwin();
 	refresh();
 
 	g_hash_table_foreach(wm->nodes, (GHFunc)refresh_node, GINT_TO_POINTER(TRUE));
 	g_signal_emit(wm, signals[SIG_TERMINAL_REFRESH], 0);
+
+	for (iter = g_list_last(wm->cws->ordered); iter; iter = iter->prev) {
+		GntWidget *w = iter->data;
+		GntNode *node = g_hash_table_lookup(wm->nodes, w);
+		top_panel(node->panel);
+	}
+
 	gnt_ws_draw_taskbar(wm->cws, TRUE);
 	update_screen(wm);
 	curs_set(0);   /* endwin resets the cursor to normal */