I've observed that control clicking the xbuttons doesn't work in a number of situations.
; Window messages generated by controlclicking X2 <00004> 00811852 P WM_XBUTTONDOWN fwKeys:MK_XBUTTON2 xPos:520 yPos:379 <00005> 00811852 P WM_XBUTTONUP fwKeys:0000 xPos:520 yPos:379
; Window messages generated by a physical press of XButton2 <00013> 00811852 P WM_XBUTTONDOWN fwKeys:MK_XBUTTON2 | 00020000 xPos:1013 yPos:714 <00014> 00811852 P WM_XBUTTONUP fwKeys:00020000 xPos:1013 yPos:714
The high-order word [of wParam] indicates which button was clicked. It can be one of the following values.
XBUTTON1 - 0x0001XBUTTON2 - 0x0002
From the message log you can see that this high order word (0x00020000) is not being set by controlclick.
If i send the appropriate messages (with the correct lParam and wParam values) via post message the window recognises it as an XButton click.