Fix T92928: Geometry nodes animation decorator wrong for vectors
Decorators were only added for the first item of an array. Decorators for all items of an array are added: - if the layout is flagged `UI_ITEM_PROP_DECORATE` automatically in `uiItemFullR` or - calling `uiItemDecoratorR` (but only in certain situations, see below) When calling `uiItemDecoratorR` with an index of 0, the following happens: - the index is passed to `uiItemDecoratorR_prop` - that checks with `ui_item_rna_is_expand` if decorators should be added to all items of an array - the check fails (because it only permits RNA_NO_INDEX -- which is -1) So two things we can do: - remain using `uiItemDecoratorR` (that would require to pass an index of RNA_NO_INDEX -- a bad level include -- or -1 - just use `uiLayoutSetPropDecorate` to flag the row properly This patch does later. Differential Revision: https://developer.blender.org/D13159
This commit is contained in:
parent
cc949f0a40
commit
570331ca96
Notes:
blender-bot
2023-02-14 08:25:14 +01:00
Referenced by issue #92928, Geometry nodes vector field keyframing bug
|
@ -1362,8 +1362,8 @@ static void draw_property_for_socket(const bContext &C,
|
|||
}
|
||||
else {
|
||||
uiLayout *row = uiLayoutRow(layout, false);
|
||||
uiLayoutSetPropDecorate(row, true);
|
||||
uiItemR(row, md_ptr, rna_path, 0, socket.name, ICON_NONE);
|
||||
uiItemDecoratorR(row, md_ptr, rna_path, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue