Description

From the UDN post: 

When the new entry is added, the entire tree gets wiped out as a result of the CDO swap, and when these update methods run it leaves the tree in a default expansion state. (Effectively wiping out the state of any expanded nodes)

Fix:

I extracted the code for restoring the expansion state of details layout (SDetailsViewBase.cpp:895-903), put it into a new method for the class, then called it in 2 places:

At the end of UpdatePropertyMaps

At the end of UpdateSinglePropertyMap, but only in cases where bIsExternal is true.

Cheers!
Steps to Reproduce

1. Create a new BP

2. Create a BP struct and add a couple variables to it

3. Add an array of this struct to your BP

4. Add two members to the array, and expand them

5. Add another member to the array

 

Result: All expanded members collapse

Expected: The expanded members stay expanded

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-96324 in the post.

1
Login to Vote

Won't Fix
ComponentUE - Gameplay - Blueprint Editor
Affects Versions4.25
CreatedAug 3, 2020
ResolvedJul 19, 2022
UpdatedJul 19, 2022