+ if (WINDOW_IS_CLIENT(window)) {
+ ObClient *c;
+ ObClient *selected;
+ selected = WINDOW_AS_CLIENT(window);
+ c = client_search_top_transient(selected);
+ wins = pick_windows(c, selected, FALSE);
+ /*wins = g_list_concat(pick_group_windows(c, selected, FALSE), wins);*/
+ } else {
+ wins = g_list_append(NULL, window);
+ stacking_list = g_list_remove(stacking_list, window);
+ }
+ do_lower(wins);
+ g_list_free(wins);
+}
+
+void stacking_below(ObWindow *window, ObWindow *below)
+{
+ GList *wins, *before;
+
+ if (window_layer(window) != window_layer(below))
+ return;
+
+ wins = g_list_append(NULL, window);
+ stacking_list = g_list_remove(stacking_list, window);
+ before = g_list_next(g_list_find(stacking_list, below));
+ do_restack(wins, before);
+ g_list_free(wins);