https://git.reactos.org/?p=reactos.git;a=commitdiff;h=918a8180718f0901e231b…
commit 918a8180718f0901e231b12fe2274b82baa926b6
Author: Thamatip Chitpong <thamatip.chitpong(a)reactos.org>
AuthorDate: Thu Aug 10 22:11:43 2023 +0700
Commit: GitHub <noreply(a)github.com>
CommitDate: Thu Aug 10 17:11:43 2023 +0200
[WINESYNC][COMCTL32] Listview: Initialize marqueeRect from left-click coordinates
before starting a marquee highlight (#5555)
The infoPtr->marqueeRect structure is not currently initialized before the
marquee highlight sequence starts, resulting in the RECT having initial
coordinates of (0,0)-(0,0). These coordinates cause the first item in
the listview control to be identified as being within the range of the
marqueeRect's coordinates.
That item is then set to LVIS_SELECTED even though it is not part of the
marquee selection.
Wine commit: daf95aaadf3a59f0ccc129a853327417b5e4f07c
author: Hugh McMaster <hugh.mcmaster(a)outlook.com>
Mon, 26 Apr 2021 10:59:51 +0000 (20:59 +1000)
---
dll/win32/comctl32/listview.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/dll/win32/comctl32/listview.c b/dll/win32/comctl32/listview.c
index 2052b66e6a9..9d6609ffd71 100644
--- a/dll/win32/comctl32/listview.c
+++ b/dll/win32/comctl32/listview.c
@@ -4218,6 +4218,7 @@ static LRESULT LISTVIEW_MouseMove(LISTVIEW_INFO *infoPtr, WORD
fwKeys, INT x, IN
/* Begin selection and capture mouse */
infoPtr->bMarqueeSelect = TRUE;
+ infoPtr->marqueeRect = rect;
SetCapture(infoPtr->hwndSelf);
}
}