From a2b5526287390a7f9cdfb94bb24eb2a66dd0de16 Mon Sep 17 00:00:00 2001 From: Jonathan Wilkes <jon.w.wilkes@gmail.com> Date: Fri, 23 Jun 2017 23:08:41 -0400 Subject: [PATCH] special case for OSX to allow click-dragging the scrollbar --- pd/nw/pd_canvas.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pd/nw/pd_canvas.js b/pd/nw/pd_canvas.js index fb290e298..c1f8946eb 100644 --- a/pd/nw/pd_canvas.js +++ b/pd/nw/pd_canvas.js @@ -585,16 +585,26 @@ var canvas_events = (function() { } in_dropdown = in_dropdown.parentNode; } + // Allow scrollbar click and drag without closing the menu if (in_dropdown && evt.pageX - select_elem.offsetLeft > select_elem.clientWidth) { return; } + // Special case for OSX, where the scrollbar doesn't take + // up any extra space + if (nw.process.platform === "darwin" + && (evt.target.id === "dropdown_list")) { + return; + } if (evt.target.parentNode && evt.target.parentNode.parentNode && evt.target.parentNode.parentNode.id === "dropdown_list") { dropdown_highlight_elem(evt.target); } + // This selects whatever item is highlighted even + // if we click outside the menu. Might be better to + // cancel in that case. dropdown_index_to_pd(select_elem); select_elem.style.setProperty("display", "none"); canvas_events.normal(); -- GitLab