diff options
author | Joshua Leung <aligorith@gmail.com> | 2018-05-28 17:54:34 +0300 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2018-05-28 17:54:45 +0300 |
commit | ce5fa2decad115f023e2f5591255078768b4fa5e (patch) | |
tree | 43a9eb14073461348d84c7fc5999869efb853cdf /source/blender/editors/space_graph/space_graph.c | |
parent | 1d320f10ac7f77465081afbfbdbf9a3563cb6e31 (diff) |
Fix: Action/Graph editor UI's didn't update when channel properties were changed
More MessageBus-related silliness to resolve issue with toggling visibility/mute/locking
status of F-Curves/Groups/etc., as well as other things like modifying active keyframe's
values, or changing properties of F-Modifiers.
I've now ended up just whitelisting in the region subscribers all the animation-related
structs in RNA. But still, that may not be enough to deal with potential issues later
with the property sliders (shown per channel, optionally), which can come from anywhere.
(Spring bug)
Diffstat (limited to 'source/blender/editors/space_graph/space_graph.c')
-rw-r--r-- | source/blender/editors/space_graph/space_graph.c | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/source/blender/editors/space_graph/space_graph.c b/source/blender/editors/space_graph/space_graph.c index 3732b78a026..6ecb454096d 100644 --- a/source/blender/editors/space_graph/space_graph.c +++ b/source/blender/editors/space_graph/space_graph.c @@ -527,12 +527,29 @@ static void graph_region_message_subscribe( } /* All dopesheet filter settings, etc. affect the drawing of this editor, - * so just whitelist the entire struct for updates + * also same applies for all animation-related datatypes that may appear here, + * so just whitelist the entire structs for updates */ { wmMsgParams_RNA msg_key_params = {{{0}}}; StructRNA *type_array[] = { - &RNA_DopeSheet, + &RNA_DopeSheet, /* dopesheet filters */ + + &RNA_ActionGroup, /* channel groups */ + &RNA_FCurve, /* F-Curve */ + &RNA_Keyframe, + &RNA_FCurveSample, + + &RNA_FModifier, /* F-Modifiers (XXX: Why can't we just do all subclasses too?) */ + &RNA_FModifierCycles, + &RNA_FModifierEnvelope, + &RNA_FModifierEnvelopeControlPoint, + &RNA_FModifierFunctionGenerator, + &RNA_FModifierGenerator, + &RNA_FModifierLimits, + &RNA_FModifierNoise, + &RNA_FModifierPython, + &RNA_FModifierStepped, }; for (int i = 0; i < ARRAY_SIZE(type_array); i++) { |