[PATCH 1/2] comctl32/listbox: Don't try to paint non-visible items for multi-column listboxes
Nikolay Sivov
nsivov at codeweavers.com
Mon May 20 07:24:25 CDT 2019
On 4/22/19 3:32 PM, Gabriel Ivăncescu wrote:
> Signed-off-by: Gabriel Ivăncescu <gabrielopcode at gmail.com>
> ---
>
> Currently the early break happens only with single-column listboxes. This
> makes it so that it works properly with multi-column listboxes as well.
>
> dlls/comctl32/listbox.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/dlls/comctl32/listbox.c b/dlls/comctl32/listbox.c
> index bd9cffd..69fa56a 100644
> --- a/dlls/comctl32/listbox.c
> +++ b/dlls/comctl32/listbox.c
> @@ -1149,6 +1149,7 @@ static LRESULT LISTBOX_Paint( LB_DESCR *descr, HDC hdc )
> rect.right += descr->column_width;
> rect.top = 0;
> col_pos = descr->page_size - 1;
> + if (rect.left >= descr->width) break;
> }
> else
> {
How does this work for RTL case?Existing optimization for single column
case is testing in vertical direction, so it's not the same.
More information about the wine-devel
mailing list