diff options
author | Campbell Barton <ideasman42@gmail.com> | 2015-01-20 15:14:06 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2015-01-20 15:16:02 +0300 |
commit | dfaf26412d8bbe12dbb7bcf5923af662791a721c (patch) | |
tree | e8d15f13cb2e7013f5e93afc090dd9ee9d96b883 | |
parent | 664ef69c9f00a2e35074ea6e186faffc445182ad (diff) |
Fix transform glitch: Ctrl/Shift didn't refresh
-rw-r--r-- | source/blender/editors/transform/transform.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c index cf50b8cb86c..2679cf1992e 100644 --- a/source/blender/editors/transform/transform.c +++ b/source/blender/editors/transform/transform.c @@ -969,6 +969,7 @@ int transformEvent(TransInfo *t, const wmEvent *event) { char cmode = constraintModeToChar(t); bool handled = false; + const int modifiers_prev = t->modifiers; t->redraw |= handleMouseInput(t, &t->mouse, event); @@ -1495,6 +1496,13 @@ int transformEvent(TransInfo *t, const wmEvent *event) } } + /* if we change snap options, get the unsnapped values back */ + if ((t->modifiers & (MOD_SNAP | MOD_SNAP_INVERT)) != + (modifiers_prev & (MOD_SNAP | MOD_SNAP_INVERT))) + { + applyMouseInput(t, &t->mouse, t->mval, t->values); + } + /* Per transform event, if present */ if (t->handleEvent && (!handled || |