Merge branch 'matthiasc/for-master' into 'master'

eventcontroller: Fix crossing event scopes

See merge request GNOME/gtk!1983
This commit is contained in:
Matthias Clasen 2020-05-30 13:41:42 +00:00
commit 8bab7b237c
2 changed files with 18 additions and 6 deletions

View File

@ -289,15 +289,28 @@ gtk_event_controller_filter_crossing (GtkEventController *controller,
const GtkCrossingData *data)
{
GtkEventControllerPrivate *priv;
GtkWidget *old_target, *new_target;
priv = gtk_event_controller_get_instance_private (controller);
if (priv->widget && !gtk_widget_is_sensitive (priv->widget))
return TRUE;
if (priv->limit == GTK_LIMIT_SAME_NATIVE &&
(!same_native (priv->widget, data->old_target) ||
!same_native (priv->widget, data->new_target)))
old_target = data->old_target;
new_target = data->new_target;
if (priv->limit == GTK_LIMIT_SAME_NATIVE)
{
/* treat out-of-scope targets like NULL */
if (!same_native (priv->widget, old_target))
old_target = NULL;
if (!same_native (priv->widget, new_target))
new_target = NULL;
}
if (old_target == NULL && new_target == NULL)
return TRUE;
return FALSE;

View File

@ -27,7 +27,7 @@ else
endif
glib_req = '>= @0@.@1@.@2@'.format(glib_major_req, glib_minor_req, glib_micro_req)
pango_req = '>= 1.45.0'
pango_req = '>= 1.44.4'
fribidi_req = '>= 0.19.7'
atk_req = '>= 2.15.1'
cairo_req = '>= 1.14.0'
@ -352,11 +352,10 @@ fribidi_dep = dependency('fribidi', version: fribidi_req,
# Require PangoFT2 if on X11 or wayland
require_pangoft2 = wayland_enabled or x11_enabled
pangoft_dep = dependency('pangoft2', required: false)
if require_pangoft2
pangoft_dep = dependency('pangoft2', fallback : ['pango', 'libpangoft2_dep'])
else
pangoft_dep = dependency('pangoft2', required: false)
endif
if win32_enabled