comctl32: Ensure listview control has focus when marquee dragging

Nikolay Sivov bunglehead at gmail.com
Fri Oct 16 10:40:22 CDT 2009


Owen Rudge wrote:
> This patch fixes an issue whereby a selection marquee would not 
> function correctly when the listview hadn't first been clicked on.
>
> ---
>  dlls/comctl32/listview.c |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
> @@ -3631,6 +3631,9 @@ static LRESULT LISTVIEW_MouseMove(LISTVIEW_INFO *infoPtr, WORD fwKeys, INT x, IN
>              LVITEMW item;
>              ITERATOR i;
>  
> +            if (!infoPtr->bFocus)
> +                SetFocus(infoPtr->hwndSelf);
> +
Hi, Owen.

This doesn't look right. Try with ControlSpy and you'll see WM_SETFOCUS 
sent just after LButton pressed on
client area (not on item, that's important). LButtonUp event used to set 
focus item was under mouse pointer and it's
released without any mouse movements (or maybe drag threshold doesn't 
count).




More information about the wine-devel mailing list