gdksurface: Do not consider GDK_TOUCH_END/CANCEL as popup-dismiss worthy
authorCarlos Garnacho <carlosg@gnome.org>
Fri, 18 Nov 2022 14:02:22 +0000 (15:02 +0100)
committerCarlos Garnacho <carlosg@gnome.org>
Fri, 18 Nov 2022 17:36:50 +0000 (18:36 +0100)
commitcc5ba83ebae31b20d8ac53fe1a32685b252a100d
treee048deed0af35656cc65a47c5f75ca79e9bfad4c
parent3b940b12f64c78346cbea8a2fafde24690ecd9fe
gdksurface: Do not consider GDK_TOUCH_END/CANCEL as popup-dismiss worthy

GDK_TOUCH_END deserves the same treatment than GDK_BUTTON_RELEASE, since it's
subject to the same circumstances (popping up a menu on long press would be
immediately dismissed on release if we handled them there). Ideally, we would
want to match releases that we obtained a press for while grabbed, but as
the popup is also dismissed on GDK_BUTTON_PRESS/GDK_TOUCH_BEGIN, there's no
use for this tracking.

And GDK_TOUCH_CANCEL sounds weird as a reason to dismiss popups, just like
crossing events would.

Related: https://gitlab.gnome.org/GNOME/mutter/-/issues/2512

(cherry-picked from commit 2ff4c77c5500110e2b387a8764ab19a92045ff4e)
gdk/gdksurface.c