When a list view item in UMG is selected using "Set Item Selection" it will get the item of the first entry in the list or the last entry manually selected by the user.
The correct item display name is printed when the user manually clicks.
Attached is an example 4.23.1 project.
Found in 4.24.1 CL#10757647
Reproduced in 4.23.1 CL#9631420, 4.25 Main CL#10889200
1. Create a Widget(MyEntryWidget) that can be used to populate a list widget that does the following:
a. Implement the "User Object List Entry" interface.
b. Sets it's name on "Event On List Item Object Set" using "List Item Object".
2. Create a widget(MyListWidget) that has a list view variable that populates itself with all the actors in a scene using "Set List Items".
3. Call "Set Timer by Event" and connect an event that will call "Set Item Selection" with an incremented index everytime it is called.
4. Create a "On Item Selection Changed" event from the listview variable that prints the item's display name.
5. In the level blueprint show the mousecursor and add a MyListWidget to the viewport and watch the printed strings.
Result: The incorrect item is retrieved by "On Item Selection Changed".
Expected: The correct item is retrieved by "On Item Selection Changed".
There's no existing public thread on this issue, so head over toAnswerHub just mention UE-86431 in the post.