- _stacking.remove(client);
- _stacking.insert(++it, client);
+ _stacking.remove(client);
+ _stacking.insert(it, client);
+ } else {
+ for (; it != end && (*it)->layer() < client->layer(); --it);
+ if (*it == client) return; // already the bottom, return
+
+ wins[0] = (*it)->frame->window();
+ wins[1] = client->frame->window();
+
+ _stacking.remove(client);
+ _stacking.insert(++it, client);
+ }