gtk/imcontextwayland: Unset focus when unsetting widget
In destruction paths of a focused entry, the IM context might first end up detached from its widget, then destroyed. This currently prevents the IM context from detaching itself from the GtkIMContextWaylandGlobal. Make it do so when unsetting the client widget, so the IM context gets properly unfocused before destruction. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/3176
This commit is contained in:
@@ -546,6 +546,7 @@ gtk_im_context_wayland_set_client_widget (GtkIMContext *context,
|
||||
|
||||
if (context_wayland->widget)
|
||||
{
|
||||
gtk_im_context_wayland_focus_out (context);
|
||||
gtk_widget_remove_controller (context_wayland->widget, GTK_EVENT_CONTROLLER (context_wayland->gesture));
|
||||
context_wayland->gesture = NULL;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user