diff options
author | Sybren A. Stüvel <sybren@blender.org> | 2021-01-12 17:43:42 +0300 |
---|---|---|
committer | Sybren A. Stüvel <sybren@blender.org> | 2021-01-12 17:43:42 +0300 |
commit | c3b68fa7b1cafa6c4e4b73830597582606082b6d (patch) | |
tree | 1b01416599f181d6ccd332e5206a63c40c5a594c /source/blender/editors/space_graph | |
parent | c96d596f433d4bb346190bb9d3a1d615abe3933a (diff) |
Fix T81965: Library-Override Not able to edit Keyframe properties
Fix keyframe properties not being editable when animating a
library-overridden datablock.
The problem was that RNA pointers were created based on the datablock
affected by the animation (for example an Object), instead of the
datablock that contains the FCurve itself (the Action). The latter can
be local to the current blend file and should thus be editable, even
when the former is not.
Reviewed By: mont29
Maniphest Tasks: T81965
Differential Revision: https://developer.blender.org/D10091
Diffstat (limited to 'source/blender/editors/space_graph')
-rw-r--r-- | source/blender/editors/space_graph/graph_buttons.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/editors/space_graph/graph_buttons.c b/source/blender/editors/space_graph/graph_buttons.c index 920f1d346b9..51be5afafe5 100644 --- a/source/blender/editors/space_graph/graph_buttons.c +++ b/source/blender/editors/space_graph/graph_buttons.c @@ -181,7 +181,7 @@ static void graph_panel_properties(const bContext *C, Panel *panel) } /* F-Curve pointer */ - RNA_pointer_create(ale->id, &RNA_FCurve, fcu, &fcu_ptr); + RNA_pointer_create(ale->fcurve_owner_id, &RNA_FCurve, fcu, &fcu_ptr); /* user-friendly 'name' for F-Curve */ col = uiLayoutColumn(layout, false); @@ -366,7 +366,7 @@ static void graph_panel_key_properties(const bContext *C, Panel *panel) int unit = B_UNIT_NONE; /* RNA pointer to keyframe, to allow editing */ - RNA_pointer_create(ale->id, &RNA_Keyframe, bezt, &bezt_ptr); + RNA_pointer_create(ale->fcurve_owner_id, &RNA_Keyframe, bezt, &bezt_ptr); /* get property that F-Curve affects, for some unit-conversion magic */ RNA_id_pointer_create(ale->id, &id_ptr); |