Merge remote-tracking branch 'origin/master' into blender2.8
[blender.git] / source / blender / windowmanager / intern / wm_operators.c
index b9fd4d2e76283f46d33c6bf8606a7ca4d35f123a..a132d323a8c2db128a52ce2e24546d202a025aa0 100644 (file)
@@ -491,6 +491,9 @@ void WM_operatortype_remove_ptr(wmOperatorType *ot)
        BLI_ghash_remove(global_ops_hash, ot->idname, NULL, NULL);
 
        WM_keyconfig_update_operatortype();
+       if (ot->mgrouptype) {
+               WM_manipulatorgrouptype_unregister(NULL, G.main, ot->mgrouptype);
+       }
 
        MEM_freeN(ot);
 }
@@ -4170,6 +4173,10 @@ void wm_operatortype_init(void)
        WM_operatortype_append(WM_OT_previews_ensure);
        WM_operatortype_append(WM_OT_previews_clear);
        WM_operatortype_append(WM_OT_doc_view_manual_ui_context);
+
+       /* manipulators */
+       WM_operatortype_append(MANIPULATORGROUP_OT_manipulator_select);
+       WM_operatortype_append(MANIPULATORGROUP_OT_manipulator_tweak);
 }
 
 /* circleselect-like modal operators */
@@ -4475,6 +4482,7 @@ void wm_window_keymap(wmKeyConfig *keyconf)
        RNA_float_set(kmi->ptr, "value", 1.0f / 1.5f);
 #endif /* WITH_INPUT_NDOF */
 
+       wm_manipulators_keymap(keyconf);
        gesture_circle_modal_keymap(keyconf);
        gesture_border_modal_keymap(keyconf);
        gesture_zoom_border_modal_keymap(keyconf);