From 7f3febf4c0d0d2aac2248dbc7c5782a6682ac79d Mon Sep 17 00:00:00 2001 From: Nathan Craddock Date: Wed, 26 Aug 2020 21:29:45 -0600 Subject: Fix (unreported): Outliner Data API tree subtree expansion The changes in rB70151e41dc02 broke subtree expansion in the Data API display mode because the closed subtrees are empty lists. Move the empty subtree check from `outliner_item_openclose` to the walk navigation code to prevent the issue. --- source/blender/editors/space_outliner/outliner_select.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'source/blender/editors/space_outliner/outliner_select.c') diff --git a/source/blender/editors/space_outliner/outliner_select.c b/source/blender/editors/space_outliner/outliner_select.c index 28f7fc70618..3c7e4506e5d 100644 --- a/source/blender/editors/space_outliner/outliner_select.c +++ b/source/blender/editors/space_outliner/outliner_select.c @@ -1661,7 +1661,10 @@ static TreeElement *outliner_walk_right(SpaceOutliner *space_outliner, if (!toggle_all && TSELEM_OPEN(tselem, space_outliner) && !BLI_listbase_is_empty(&te->subtree)) { te = te->subtree.first; } - else { + /* Prevent opening leaf elements in the tree. + * This cannot be done in `outliner_item_openclose` because the Data API display mode subtrees + * are empty unless expanded. */ + else if (!BLI_listbase_is_empty(&te->subtree)) { outliner_item_openclose(te, true, toggle_all); } -- cgit v1.2.3