[Bf-blender-cvs] [25f854552ef] modifier-panels-ui: UI: disable shade flat/smooth in sculpt mode

Campbell Barton noreply at git.blender.org
Thu Apr 16 21:30:27 CEST 2020


Commit: 25f854552efed68d11015d4ec1ce15ffebd87bd6
Author: Campbell Barton
Date:   Thu Apr 16 12:06:50 2020 +1000
Branches: modifier-panels-ui
https://developer.blender.org/rB25f854552efed68d11015d4ec1ce15ffebd87bd6

UI: disable shade flat/smooth in sculpt mode

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

M	source/blender/editors/object/object_edit.c

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

diff --git a/source/blender/editors/object/object_edit.c b/source/blender/editors/object/object_edit.c
index 6833143dec0..d944d4c4dd3 100644
--- a/source/blender/editors/object/object_edit.c
+++ b/source/blender/editors/object/object_edit.c
@@ -1364,7 +1364,15 @@ static int shade_smooth_exec(bContext *C, wmOperator *op)
 
 static bool shade_poll(bContext *C)
 {
-  return (CTX_data_edit_object(C) == NULL);
+  ViewLayer *view_layer = CTX_data_view_layer(C);
+  Object *obact = OBACT(view_layer);
+  if (obact != NULL) {
+    /* Doesn't handle edit-data, sculpt dynamic-topology, or their undo systems. */
+    if (obact->mode & (OB_MODE_EDIT | OB_MODE_SCULPT)) {
+      return false;
+    }
+  }
+  return true;
 }
 
 void OBJECT_OT_shade_flat(wmOperatorType *ot)



More information about the Bf-blender-cvs mailing list