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>2020-01-29 09:00:26 +0300
committerCampbell Barton <ideasman42@gmail.com>2020-01-29 09:00:26 +0300
commita554ff969332b99fdcbc53ec940f08df10639430 (patch)
treeb7a3e4e1ee93df481362c6b91d6c4b447c896416
parenta622e29a25414d6f3a050f609abb667dabfe4624 (diff)
parentdee9c3cc25419146bd38016f0e2ec98eea282962 (diff)
Merge branch 'blender-v2.82-release'
-rw-r--r--release/scripts/startup/bl_ui/space_view3d.py19
-rw-r--r--source/blender/modifiers/intern/MOD_solidify_nonmanifold.c5
2 files changed, 17 insertions, 7 deletions
diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index 02dc03be127..3a3869068b0 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -621,15 +621,19 @@ class VIEW3D_HT_header(Header):
tool_settings = context.tool_settings
view = context.space_data
shading = view.shading
- # mode_string = context.mode
- obj = context.active_object
show_region_tool_header = view.show_region_tool_header
if not show_region_tool_header:
layout.row(align=True).template_header()
row = layout.row(align=True)
+ obj = context.active_object
+ # mode_string = context.mode
object_mode = 'OBJECT' if obj is None else obj.mode
+ has_pose_mode = (
+ (object_mode == 'POSE') or
+ (object_mode == 'WEIGHT_PAINT' and context.pose_object is not None)
+ )
# Note: This is actually deadly in case enum_items have to be dynamically generated
# (because internal RNA array iterator will free everything immediately...).
@@ -780,10 +784,13 @@ class VIEW3D_HT_header(Header):
"view3d.toggle_xray",
text="",
icon='XRAY',
- depress=getattr(
- shading,
- "show_xray_wireframe" if shading.type == 'WIREFRAME' else
- "show_xray"
+ depress=(
+ overlay.show_xray_bone if has_pose_mode else
+ getattr(
+ shading,
+ "show_xray_wireframe" if shading.type == 'WIREFRAME' else
+ "show_xray"
+ )
),
)
diff --git a/source/blender/modifiers/intern/MOD_solidify_nonmanifold.c b/source/blender/modifiers/intern/MOD_solidify_nonmanifold.c
index 144ba25c8fa..799c1c966a3 100644
--- a/source/blender/modifiers/intern/MOD_solidify_nonmanifold.c
+++ b/source/blender/modifiers/intern/MOD_solidify_nonmanifold.c
@@ -1407,7 +1407,7 @@ Mesh *MOD_solidify_nonmanifold_applyModifier(ModifierData *md,
disable_boundary_fix = true;
}
}
- /* Simple/Even Method. */
+ /* Fixed/Even Method. */
else {
float total_angle = 0;
float total_angle_back = 0;
@@ -1520,6 +1520,9 @@ Mesh *MOD_solidify_nonmanifold_applyModifier(ModifierData *md,
if (has_back && total_angle_back > FLT_EPSILON) {
mul_v3_fl(nor_back, 1.0f / total_angle_back);
add_v3_v3(nor, nor_back);
+ if (has_front && total_angle > FLT_EPSILON) {
+ mul_v3_fl(nor, 0.5f);
+ }
}
}
/* Set move_nor for boundary fix. */