-/*
- void client_foreach_transient(ObClient *self, ObClientForeachFunc func, gpointer data)
- {
- GSList *it;
-
- for (it = self->transients; it; it = g_slist_next(it)) {
- if (!func(it->data, data)) return;
- client_foreach_transient(it->data, func, data);
- }
- }
-
- void client_foreach_ancestor(ObClient *self, ObClientForeachFunc func, gpointer data)
- {
- if (self->transient_for) {
- if (self->transient_for != OB_TRAN_GROUP) {
- if (!func(self->transient_for, data)) return;
- client_foreach_ancestor(self->transient_for, func, data);
- } else {
- GSList *it;
-
- for (it = self->group->members; it; it = g_slist_next(it))
- if (it->data != self &&
- !((ObClient*)it->data)->transient_for) {
- if (!func(it->data, data)) return;
- client_foreach_ancestor(it->data, func, data);
- }
- }
- }
- }
-*/
-