diff --git a/sway/input/text_input.c b/sway/input/text_input.c index 42f3160d2..c3d7da7f1 100644 --- a/sway/input/text_input.c +++ b/sway/input/text_input.c @@ -288,7 +288,7 @@ static struct sway_layer_surface *find_layer_by_surface( struct wlr_layer_surface_v1 *layer) { for (int i = 0; i < root->outputs->length; ++i) { struct sway_output *output = root->outputs->items[i]; - // For now we'll only check the overlay and top layer + // For now we'll only check the overlay, top layer and bottom layer struct sway_layer_surface *surface; surface = loop_layer_surface(output->layers.shell_top->children, layer); if (surface != NULL) { @@ -298,6 +298,10 @@ static struct sway_layer_surface *find_layer_by_surface( if (surface != NULL) { return surface; } + surface = loop_layer_surface(output->layers.shell_bottom->children, layer); + if (surface != NULL) { + return surface; + } } return NULL; }