+
+ if (c == selected)
+ sel_child = TRUE;
+ else
+ sel_child = client_search_transient(c, selected) != NULL;
+
+ if (!c->modal) {
+ if (!sel_child) {
+ trans = g_list_concat(trans,
+ pick_windows(c, selected, raise));
+ } else {
+ trans_sel = g_list_concat(trans_sel,
+ pick_windows(c, selected,
+ raise));
+ }
+ } else {
+ if (!sel_child) {
+ modals = g_list_concat(modals,
+ pick_windows(c, selected, raise));
+ } else {
+ modal_sel = g_list_concat(modal_sel,
+ pick_windows(c, selected,
+ raise));
+ }
+ }
+ /* if we dont have a prev then start back at the beginning,
+ otherwise skip back to the prev's next */
+ next = prev ? g_list_next(prev) : stacking_list;