In real world applications it may take dozens of seconds to display the "Select Entity" dialog when editing a widget's datasource property. The reason is: Studio populates the entire tree eagerly. The more page parameters you have and the deeper is your nested data view the slower it works.
I propose to only display the top level elements and calculate their children only when expanded.
Search is a special case, it needs to traverse the whole tree, but we don't always use search.