Haha dirty indeed. But it works!
I don't know why but the mouseDownX and mouseDownY values I get when clicking on the panel are always huge. So I'm using an X that's higher than my object width to trigger that? Idk man... haha
if (event.mouseDownX > 26) { //click on panel //first click shows menu, second hides menu } if (!event.hover && !event.mouseDownX) { //click off of panel that also hides menu }