diff --git a/desktop-shell/input-panel.c b/desktop-shell/input-panel.c index a7645b7a4..89a0f33a4 100644 --- a/desktop-shell/input-panel.c +++ b/desktop-shell/input-panel.c @@ -191,7 +191,15 @@ input_panel_committed(struct weston_surface *surface, return; if (weston_surface_is_mapped(surface)) + { + if (shell->showing_input_panels) + { + struct weston_coord_global pos; + if (!calc_input_panel_position(ip_surface, &pos)) + weston_view_set_position(ip_surface->view, pos); + } return; + } weston_surface_map(surface);