screenshot: Only select area on button release after a button down

On Wayland it is possible to trigger area selection with a button
already being down. SelectArea would then react to the subsequent button
release without ever having seen a corresponding button down first,
leaving the start coordinates of the selection rectangle uninitialized.

Related: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2761
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1825>
This commit is contained in:
Sebastian Keller 2021-04-28 07:13:35 +02:00 committed by Marge Bot
parent 82c2f293a0
commit 548e18ad7e

View File

@ -393,6 +393,9 @@ class SelectArea extends St.Widget {
}
vfunc_button_release_event() {
if (this._startX === -1 || this._startY === -1)
return Clutter.EVENT_PROPAGATE;
this._result = this._getGeometry();
this.ease({
opacity: 0,