From c507bd4e3b3c500258b4503c80fb8026588d17b4 Mon Sep 17 00:00:00 2001 From: Thomas A Caswell Date: Wed, 6 Nov 2024 16:42:25 -0500 Subject: [PATCH] ENH: add back/forward buttons to osx backend move closes #29045 --- 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);