diff options
author | Campbell Barton <ideasman42@gmail.com> | 2018-12-10 04:30:41 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2018-12-10 04:30:41 +0300 |
commit | 642c315bae13ccb418ec767e6f29ca4e450dde5d (patch) | |
tree | a292b4dc52673e689166a67e763bfdf2e9994482 /source/blender/editors | |
parent | 9df2b6da3a718323dbe9431c5a4b43fc309fa4b9 (diff) |
Fix T53544: Undo in pose mode selects all fcurves
Diffstat (limited to 'source/blender/editors')
-rw-r--r-- | source/blender/editors/space_graph/space_graph.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/source/blender/editors/space_graph/space_graph.c b/source/blender/editors/space_graph/space_graph.c index fead6efa2b5..3b476ff3645 100644 --- a/source/blender/editors/space_graph/space_graph.c +++ b/source/blender/editors/space_graph/space_graph.c @@ -513,7 +513,7 @@ static void graph_listener(bScreen *UNUSED(sc), ScrArea *sa, wmNotifier *wmn) ED_area_tag_redraw(sa); break; case NC_WINDOW: - if (sipo->runtime.flag & SIPO_RUNTIME_FLAG_NEED_CHAN_SYNC) { + if (sipo->runtime.flag & (SIPO_RUNTIME_FLAG_NEED_CHAN_SYNC | SIPO_RUNTIME_FLAG_NEED_CHAN_SYNC_COLOR)) { /* force redraw/refresh after undo/redo - prevents "black curve" problem */ ED_area_tag_refresh(sa); } @@ -676,6 +676,15 @@ static void graph_refresh(const bContext *C, ScrArea *sa) ED_area_tag_redraw(sa); } + /* We could check 'SIPO_RUNTIME_FLAG_NEED_CHAN_SYNC_COLOR', but color is recalculated anyway. */ + if (sipo->runtime.flag & SIPO_RUNTIME_FLAG_NEED_CHAN_SYNC_COLOR) { + sipo->runtime.flag &= ~SIPO_RUNTIME_FLAG_NEED_CHAN_SYNC_COLOR; +#if 0 /* Done below. */ + graph_refresh_fcurve_colors(C); +#endif + ED_area_tag_redraw(sa); + } + /* init/adjust F-Curve colors */ graph_refresh_fcurve_colors(C); } |