Commit f37d9122 authored by Francois Gouget's avatar Francois Gouget Committed by Alexandre Julliard

comctl32/listbox: Do no limit item height to 255.

The change happened between Windows 10 1607 and 1709 in comctl32 v6. Signed-off-by: 's avatarFrancois Gouget <fgouget@free.fr> Signed-off-by: 's avatarNikolay Sivov <nsivov@codeweavers.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent 950d960e
......@@ -1280,7 +1280,7 @@ static LRESULT LISTBOX_GetItemHeight( const LB_DESCR *descr, INT index )
*/
static LRESULT LISTBOX_SetItemHeight( LB_DESCR *descr, INT index, INT height, BOOL repaint )
{
if (height > MAXBYTE)
if (height > MAXWORD)
return -1;
if (!height) height = 1;
......
......@@ -769,11 +769,27 @@ static void test_listbox_height(void)
r = SendMessageA(hList, LB_GETITEMHEIGHT, 0, 0 );
ok( r == 20, "height wrong\n");
/* Before Windows 10 1709 (or 1703?) the item height was limited to 255.
* Since then, with comctl32 V6 the limit is 65535.
*/
r = SendMessageA( hList, LB_SETITEMHEIGHT, 0, MAKELPARAM( 256, 0 ));
ok( r == -1, "Failed to set item height, %d.\n", r);
ok(r == 0 || broken(r == -1), "Failed to set item height, %d.\n", r);
if (r == -1)
{
r = SendMessageA(hList, LB_GETITEMHEIGHT, 0, 0 );
ok( r == 20, "Unexpected item height %d.\n", r);
}
else
{
r = SendMessageA(hList, LB_GETITEMHEIGHT, 0, 0 );
ok( r == 256, "Unexpected item height %d.\n", r);
r = SendMessageA(hList, LB_GETITEMHEIGHT, 0, 0 );
ok( r == 20, "Unexpected item height %d.\n", r);
r = SendMessageA( hList, LB_SETITEMHEIGHT, 0, MAKELPARAM( 65535, 0 ));
ok(r == 0, "Failed to set item height, %d.\n", r);
r = SendMessageA(hList, LB_GETITEMHEIGHT, 0, 0 );
ok( r == 65535, "Unexpected item height %d.\n", r);
}
r = SendMessageA( hList, LB_SETITEMHEIGHT, 0, MAKELPARAM( 0xff, 0 ));
ok( r == 0, "send message failed\n");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment