diff options
Diffstat (limited to 'source/blender/editors/space_spreadsheet/spreadsheet_context.cc')
-rw-r--r-- | source/blender/editors/space_spreadsheet/spreadsheet_context.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/source/blender/editors/space_spreadsheet/spreadsheet_context.cc b/source/blender/editors/space_spreadsheet/spreadsheet_context.cc index 1a61f021e92..ec9fa72edb1 100644 --- a/source/blender/editors/space_spreadsheet/spreadsheet_context.cc +++ b/source/blender/editors/space_spreadsheet/spreadsheet_context.cc @@ -451,9 +451,7 @@ bool ED_spreadsheet_context_path_is_active(const bContext *C, SpaceSpreadsheet * if (modifier == nullptr) { return false; } - if (!(modifier->flag & eModifierFlag_Active)) { - return false; - } + const bool modifier_is_active = modifier->flag & eModifierFlag_Active; if (modifier->type != eModifierType_Nodes) { return false; } @@ -480,6 +478,12 @@ bool ED_spreadsheet_context_path_is_active(const bContext *C, SpaceSpreadsheet * if (snode->nodetree != root_node_tree) { continue; } + if (!modifier_is_active) { + if (!(snode->flag & SNODE_PIN)) { + /* Node tree has to be pinned when the modifier is not active. */ + continue; + } + } if (snode->id != &object->id) { continue; } |