Hi,
v2.4.3.0
In procedure TAdvSmoothImageListBox.Navigate(Key: Word; Shift: TShiftState);
The following while loop does not ever break if:
- key other than VK_NEXT or VK_PRIOR
- In the direction to move there are no visible items left
while Items[FSelectedItemIndex].Splitter and (FSelectedItemIndex > 0) and (FSelectedItemIndex < Items.Count) or (Items[FSelectedItemIndex].Enabled = false) or (Items[FSelectedItemIndex].Visible = false) do
begin
case Key of
VK_NEXT: i := FSelectedItemIndex + 1;
VK_PRIOR: i := FSelectedItemIndex - 1;
else
ProcessKeyDown(Key, FSelectedItemIndex);
i := FSelectedItemIndex;
end;
if (i <= 1) or (i >= Items.Count) then
break;
end;