Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2019-12-12 10:37:51 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-12-12 10:39:34 +0300
commit2f1b891dd9d2e9756b2422add075d98d8b9bbe1d (patch)
tree86d5a7681701124be793a205fc2f8ae9139c672c /source/blender/editors/transform/transform_gizmo_3d.c
parent464d3e905d1630260ac669d421bacf4d60f8d7ea (diff)
Fix tool fallback being ignored with transform gizmos
This only worked once the gizmo was displayed.
Diffstat (limited to 'source/blender/editors/transform/transform_gizmo_3d.c')
-rw-r--r--source/blender/editors/transform/transform_gizmo_3d.c48
1 files changed, 24 insertions, 24 deletions
diff --git a/source/blender/editors/transform/transform_gizmo_3d.c b/source/blender/editors/transform/transform_gizmo_3d.c
index 336f9974e7d..f19147baa89 100644
--- a/source/blender/editors/transform/transform_gizmo_3d.c
+++ b/source/blender/editors/transform/transform_gizmo_3d.c
@@ -1743,6 +1743,13 @@ static void WIDGETGROUP_gizmo_refresh(const bContext *C, wmGizmoGroup *gzgroup)
RegionView3D *rv3d = ar->regiondata;
struct TransformBounds tbounds;
+ if (scene->toolsettings->workspace_tool_type == SCE_WORKSPACE_TOOL_FALLBACK) {
+ gzgroup->use_fallback_keymap = true;
+ }
+ else {
+ gzgroup->use_fallback_keymap = false;
+ }
+
if (ggd->use_twtype_refresh) {
ggd->twtype = v3d->gizmo_show_object & ggd->twtype_init;
if (ggd->twtype != ggd->twtype_prev) {
@@ -1829,13 +1836,6 @@ static void WIDGETGROUP_gizmo_refresh(const bContext *C, wmGizmoGroup *gzgroup)
for (int i = MAN_AXIS_RANGE_ROT_START; i < MAN_AXIS_RANGE_ROT_END; i++) {
ggd->gizmos[i]->select_bias = rotate_select_bias;
}
-
- if (scene->toolsettings->workspace_tool_type == SCE_WORKSPACE_TOOL_FALLBACK) {
- gzgroup->use_fallback_keymap = true;
- }
- else {
- gzgroup->use_fallback_keymap = false;
- }
}
static void WIDGETGROUP_gizmo_message_subscribe(const bContext *C,
@@ -2176,6 +2176,13 @@ static void WIDGETGROUP_xform_cage_refresh(const bContext *C, wmGizmoGroup *gzgr
struct TransformBounds tbounds;
+ if (scene->toolsettings->workspace_tool_type == SCE_WORKSPACE_TOOL_FALLBACK) {
+ gzgroup->use_fallback_keymap = true;
+ }
+ else {
+ gzgroup->use_fallback_keymap = false;
+ }
+
const TransformOrientationSlot *orient_slot = BKE_scene_orientation_slot_get(scene,
SCE_ORIENT_SCALE);
@@ -2231,13 +2238,6 @@ static void WIDGETGROUP_xform_cage_refresh(const bContext *C, wmGizmoGroup *gzgr
/* Needed to test view orientation changes. */
copy_m3_m4(xgzgroup->prev.viewinv_m3, rv3d->viewinv);
-
- if (scene->toolsettings->workspace_tool_type == SCE_WORKSPACE_TOOL_FALLBACK) {
- gzgroup->use_fallback_keymap = true;
- }
- else {
- gzgroup->use_fallback_keymap = false;
- }
}
static void WIDGETGROUP_xform_cage_message_subscribe(const bContext *C,
@@ -2388,6 +2388,16 @@ static void WIDGETGROUP_xform_shear_refresh(const bContext *C, wmGizmoGroup *gzg
struct XFormShearWidgetGroup *xgzgroup = gzgroup->customdata;
struct TransformBounds tbounds;
+ if (scene->toolsettings->workspace_tool_type == SCE_WORKSPACE_TOOL_FALLBACK) {
+ gzgroup->use_fallback_keymap = true;
+ }
+ else {
+ gzgroup->use_fallback_keymap = false;
+ }
+
+ /* Needed to test view orientation changes. */
+ copy_m3_m4(xgzgroup->prev.viewinv_m3, rv3d->viewinv);
+
const TransformOrientationSlot *orient_slot = BKE_scene_orientation_slot_get(scene,
SCE_ORIENT_ROTATE);
@@ -2440,16 +2450,6 @@ static void WIDGETGROUP_xform_shear_refresh(const bContext *C, wmGizmoGroup *gzg
WM_gizmo_set_flag(gz, WM_GIZMO_HIDDEN, false);
}
}
-
- /* Needed to test view orientation changes. */
- copy_m3_m4(xgzgroup->prev.viewinv_m3, rv3d->viewinv);
-
- if (scene->toolsettings->workspace_tool_type == SCE_WORKSPACE_TOOL_FALLBACK) {
- gzgroup->use_fallback_keymap = true;
- }
- else {
- gzgroup->use_fallback_keymap = false;
- }
}
static void WIDGETGROUP_xform_shear_message_subscribe(const bContext *C,