From cebc9401b2a7652c0999b4ad5d876f8633adfcd3 Mon Sep 17 00:00:00 2001 From: Greg Lucas Date: Thu, 7 Nov 2024 09:04:28 -0700 Subject: [PATCH] Backport PR #29097: ENH: add back/forward buttons to osx backend move --- src/_macosx.m | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/_macosx.m b/src/_macosx.m index fc8982b582dd..30c5ddf30ce0 100755 --- a/src/_macosx.m +++ b/src/_macosx.m @@ -289,10 +289,13 @@ bool mpl_check_button(bool present, PyObject* set, char const* name) { PyGILState_STATE gstate = PyGILState_Ensure(); PyObject* set = NULL; NSUInteger buttons = [NSEvent pressedMouseButtons]; + if (!(set = PySet_New(NULL)) || mpl_check_button(buttons & (1 << 0), set, "LEFT") || mpl_check_button(buttons & (1 << 1), set, "RIGHT") - || mpl_check_button(buttons & (1 << 2), set, "MIDDLE")) { + || mpl_check_button(buttons & (1 << 2), set, "MIDDLE") + || mpl_check_button(buttons & (1 << 3), set, "BACK") + || mpl_check_button(buttons & (1 << 4), set, "FORWARD")) { Py_CLEAR(set); // On failure, return NULL with an exception set. } PyGILState_Release(gstate);