From 15083d9e1eebe0be0cca427602aa826f113ff997 Mon Sep 17 00:00:00 2001 From: Julian Eisel Date: Fri, 19 Jun 2020 19:09:32 +0200 Subject: UI: Avoid rebuilding Outliner tree when opening/collapsing items In big files, the Outliner would have a noticeable lag when opening or collapsing items. That was because the entire tree was rebuilt, which isn't actually needed in most cases. So we avoid it where possible now. --- source/blender/editors/space_outliner/outliner_intern.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'source/blender/editors/space_outliner/outliner_intern.h') diff --git a/source/blender/editors/space_outliner/outliner_intern.h b/source/blender/editors/space_outliner/outliner_intern.h index 3a928485711..32a67d57d0f 100644 --- a/source/blender/editors/space_outliner/outliner_intern.h +++ b/source/blender/editors/space_outliner/outliner_intern.h @@ -228,6 +228,8 @@ void outliner_build_tree(struct Main *mainvar, struct SpaceOutliner *soops, struct ARegion *region); +bool outliner_element_needs_rebuild_on_open_change(const TreeStoreElem *tselem); + typedef struct IDsSelectedData { struct ListBase selected_array; } IDsSelectedData; -- cgit v1.2.3