diff options
author | Campbell Barton <ideasman42@gmail.com> | 2020-01-09 03:00:22 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2020-01-09 03:07:28 +0300 |
commit | 830aa758b40bea7b40116049a3535103337a3003 (patch) | |
tree | 95a26da7efbfe17769330584807bc5111484b179 /source/blender/windowmanager/intern/wm_gesture_ops.c | |
parent | 99c798b8a623fdf40d592a2b48304ebe77040f4a (diff) |
Fix T72900: Mouse-move causes redraw when gizmos are hidden
Move redraw tagging to the gesture modal operator
to make sure this only runs when it's needed.
Caused by d591c8a350310, which tagged the region to redraw when the
gizmos were tagged to refresh, however they wont redraw when hidden.
Thanks to @jbakker for finding the root cause.
Diffstat (limited to 'source/blender/windowmanager/intern/wm_gesture_ops.c')
-rw-r--r-- | source/blender/windowmanager/intern/wm_gesture_ops.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/source/blender/windowmanager/intern/wm_gesture_ops.c b/source/blender/windowmanager/intern/wm_gesture_ops.c index 4bd87b33a23..a5f32b4ff1f 100644 --- a/source/blender/windowmanager/intern/wm_gesture_ops.c +++ b/source/blender/windowmanager/intern/wm_gesture_ops.c @@ -528,6 +528,15 @@ static void gesture_tweak_modal(bContext *C, const wmEvent *event) if (gesture_end) { /* Frees gesture itself, and unregisters from window. */ WM_gesture_end(C, gesture); + + /* This isn't very nice but needed to redraw gizmos which are hidden while tweaking, + * See #WM_GIZMOGROUPTYPE_DELAY_REFRESH_FOR_TWEAK for details. */ + ARegion *ar = CTX_wm_region(C); + if ((ar != NULL) && (ar->gizmo_map != NULL)) { + if (WM_gizmomap_tag_delay_refresh_for_tweak_check(ar->gizmo_map)) { + ED_region_tag_redraw(ar); + } + } } } |