[Bf-extensions-cvs] [87f667f] master: xedit: regression bugfix causing transform freeze

NBurn noreply at git.blender.org
Sun May 2 14:48:34 CEST 2021


Commit: 87f667ff3583a02b1d80e650937c95292951f6e6
Author: NBurn
Date:   Sun May 2 08:48:19 2021 -0400
Branches: master
https://developer.blender.org/rBAC87f667ff3583a02b1d80e650937c95292951f6e6

xedit: regression bugfix causing transform freeze

Reworking the last commit. Previous commit fixed rotation bug, but
would freeze Blender when doing certain transforms with Exact Edit.

===================================================================

M	exact_edit/__init__.py
M	exact_edit/xedit_set_meas.py

===================================================================

diff --git a/exact_edit/__init__.py b/exact_edit/__init__.py
index 950c395..e52d31e 100644
--- a/exact_edit/__init__.py
+++ b/exact_edit/__init__.py
@@ -21,7 +21,7 @@ END GPL LICENSE BLOCK
 bl_info = {
     "name": "Exact Edit",
     "author": "nBurn",
-    "version": (0, 3, 3),
+    "version": (0, 3, 4),
     "blender": (2, 80, 0),
     "location": "View3D",
     "description": "Tool for precisely setting distance, scale, and rotation",
diff --git a/exact_edit/xedit_set_meas.py b/exact_edit/xedit_set_meas.py
index 271a9dd..1c69d13 100644
--- a/exact_edit/xedit_set_meas.py
+++ b/exact_edit/xedit_set_meas.py
@@ -1572,17 +1572,7 @@ def draw_callback_px(self, context):
     lk_pts2d = None  # lock points 2D
     self.meas_btn.is_drawn = False  # todo : cleaner btn activation
 
-    # if the addon_mode is WAIT_FOR_POPUP, wait on POPUP to disable
-    # popup_active, then run process_popup_input
-    # would prefer not to do pop-up check inside draw_callback, but not sure
-    # how else to check for input. need higher level "input handler" class?
-    if self.addon_mode == WAIT_FOR_POPUP:
-        global popup_active
-        if not popup_active:
-            process_popup_input(self)
-            set_help_text(self, "CLICK")
-
-    elif self.addon_mode == GET_0_OR_180:
+    if self.addon_mode == GET_0_OR_180:
         choose_0_or_180(TransDat.lock_pts[2], TransDat.rot_pt_pos,
                 TransDat.rot_pt_neg, TransDat.ang_diff_r, self.mouse_co)
 
@@ -1988,6 +1978,15 @@ class XEDIT_OT_set_meas(bpy.types.Operator):
             exit_addon(self)
             return {'FINISHED'}
 
+        # if the addon_mode is WAIT_FOR_POPUP, wait on POPUP to disable
+        # popup_active, then run process_popup_input
+        # todo: look into sure how else to check for POPUP input?
+        #       need higher level "input handler" class?
+        if self.addon_mode == WAIT_FOR_POPUP:
+            if not popup_active:
+                process_popup_input(self)
+                set_help_text(self, "CLICK")
+
         return {'RUNNING_MODAL'}
 
     def invoke(self, context, event):



More information about the Bf-extensions-cvs mailing list