window: Prevent resize cursors from sticking

When a modal dialog is smaller than its parent,
we were keeping the resize cursor from the dialogs
edge all over the parent window, which looks
really irritating, since the resize cursors are
closely associated with the window edge. Fix
this by falling back to the default cursor
outside the grab widgets surface.

Closes: https://gitlab.gnome.org/GNOME/gtk/issues/23
This commit is contained in:
Matthias Clasen 2019-05-01 00:16:21 +00:00
parent 074a0014c1
commit 26b17473aa

View File

@ -9885,7 +9885,10 @@ update_cursor (GtkWindow *toplevel,
/* Outside the grab widget, cursor stays to whatever the grab
* widget says.
*/
cursor = gtk_widget_get_cursor (grab_widget);
if (gtk_widget_get_surface (grab_widget) == gtk_widget_get_surface (target))
cursor = gtk_widget_get_cursor (grab_widget);
else
cursor = NULL;
}
else
{