This should solve the slowdown when selecting in Xnews, reported by Paul. Paul, can you please confirm? ChangeLog When removing focus, no need to go through all elements. --- dlls/comctl32/listview.c.V7 Sun Oct 20 16:25:34 2002 +++ dlls/comctl32/listview.c Sun Oct 20 16:46:26 2002 @@ -2608,7 +2608,7 @@ lvItem.state = nItem == -1 ? 0 : LVIS_FOCUSED; lvItem.stateMask = LVIS_FOCUSED; - LISTVIEW_SetItemState(infoPtr, nItem, &lvItem); + LISTVIEW_SetItemState(infoPtr, nItem == -1 ? infoPtr->nFocusedItem : nItem, &lvItem); return oldFocus != infoPtr->nFocusedItem; }