[Bf-blender-cvs] [65f674b570f] master: Fix T75535: Compositor backdrop gizmo dragging interrupts with node mouse over
Philipp Oeser
noreply at git.blender.org
Tue Apr 14 18:36:32 CEST 2020
Commit: 65f674b570fc5eb1b5011bf8ae5cc3e031026665
Author: Philipp Oeser
Date: Thu Apr 9 13:24:42 2020 +0200
Branches: master
https://developer.blender.org/rB65f674b570fc5eb1b5011bf8ae5cc3e031026665
Fix T75535: Compositor backdrop gizmo dragging interrupts with node
mouse over
Caused by rB5929dd7129f6.
Above commit would reset the gizmo highlight on node mouseover.
This would also assert in gizmo_rect_pivot_from_scale_part() and stop
the drag.
So now, only reset the gizmo when we are not in EVT_GIZMO_UPDATE,
allowing for starting the tweak outside a node and then travelling
'inside' while still preventing to use it over a node when starting a
tweak there.
Maniphest Tasks: T75535
Differential Revision: https://developer.blender.org/D7383
===================================================================
M source/blender/windowmanager/intern/wm_event_system.c
===================================================================
diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c
index 15b6fe53417..8b8c1b90dc9 100644
--- a/source/blender/windowmanager/intern/wm_event_system.c
+++ b/source/blender/windowmanager/intern/wm_event_system.c
@@ -2519,10 +2519,11 @@ static int wm_handlers_do_gizmo_handler(bContext *C,
wmGizmo *gz = wm_gizmomap_highlight_get(gzmap);
/* Needed so UI blocks over gizmos don't let events fall through to the gizmos,
- * noticeable for the node editor - where dragging on a node should move it, see: T73212. */
+ * noticeable for the node editor - where dragging on a node should move it, see: T73212.
+ * note we still allow for starting the gizmo drag outside, then travel 'inside' the node */
if (region->type->clip_gizmo_events_by_ui) {
if (UI_region_block_find_mouse_over(region, &event->x, true)) {
- if (gz != NULL) {
+ if (gz != NULL && event->type != EVT_GIZMO_UPDATE) {
WM_tooltip_clear(C, CTX_wm_window(C));
wm_gizmomap_highlight_set(gzmap, C, NULL, 0);
}
More information about the Bf-blender-cvs
mailing list