You're creating the menu at gridx,grixy instead of mousex,mousey
When you create at mousex,mousey you have an event that destroys on touch so you'll never see the menu. You should set up a boolean for opened/closed and trigger the pop up in that way.
If by solid you mean 'has collision', they already do, unless you erase the tree tiles. It really depends what you mean by solid in this situation and what you want the trees to do.