Merge pull request #2194 from RyanDwyer/fix-incorrect-render

Don't return pending children in seat_get_active_current_child
This commit is contained in:
emersion 2018-07-02 13:29:25 +01:00 committed by GitHub
commit 8cc26130a6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -832,12 +832,12 @@ struct sway_container *seat_get_active_child(struct sway_seat *seat,
struct sway_container *seat_get_active_current_child(struct sway_seat *seat,
struct sway_container *container) {
struct sway_container *child = seat_get_active_child(seat, container);
if (child) {
return child;
struct sway_seat_container *current = NULL;
wl_list_for_each(current, &seat->focus_stack, link) {
if (current->container->current.parent == container &&
current->container->current.layout != L_FLOATING) {
return current->container;
}
if (container->current.children->length == 1) {
return container->current.children->items[0];
}
return NULL;
}