#7165: Fixing PopUpMenu behaviour ----------------------------------+------------------------ Reporter: Pete | Owner: axeld Type: enhancement | Status: new Priority: normal | Milestone: R1 Component: Kits/Interface Kit | Version: R1/alpha2 Keywords: | Blocked By: Has a Patch: 0 | Platform: All Blocking: | ----------------------------------+------------------------ This patch implements what I think is the consensus on the preferred PopUpMenu behaviour in response to various mouse actions. It is not subject to the constraints of #7022, which doesn't work correctly when, for example, the desired menu position is not exactly at the click point. It works as follows: A (secondary) mouse ''click'' in the menu activation area (e.g. View) holds the menu open until the next click, whether the mouse-up is outside or inside the menu itself. A slower press and release will always close the menu, selecting and returning any item the cursor is over at the time. This now works wherever the menu is designed (or happens) to appear. There is no need to constrain default 'openAlways' or 'clickToOpenRect' settings, which however may be used as always to modify the default. It distinguishes between a "click" and a "press" via the double- click_speed user preference (which is how BeOS also distinguishes them. -- Ticket URL: <http://dev.haiku-os.org/ticket/7165> Haiku <http://dev.haiku-os.org> Haiku - the operating system.