This is all correct and I'm not arguing about that.
What I do argue is why the context-menu event should care what mouse
button click it comes from?
if the menu is shown on button press (not release) (and this is typical), then something has be a little clever about the next-arriving button release event.